This commit is contained in:
11
main.py
11
main.py
@@ -100,6 +100,7 @@ def fetch_with_proxy(url, proxy, verify, timeout):
|
||||
return None
|
||||
except:
|
||||
return None
|
||||
|
||||
# Перемешивает список прокси для случайного начала
|
||||
def get_shuffled_proxies(proxies_list):
|
||||
shuffled = proxies_list.copy()
|
||||
@@ -483,6 +484,8 @@ async def process_parser_two_ist(background_tasks: BackgroundTasks):
|
||||
class Parserall(BaseModel):
|
||||
url: HttpUrl
|
||||
promt: str
|
||||
class Parserall_url(BaseModel):
|
||||
url: HttpUrl
|
||||
|
||||
@app.post("/add_sources" , summary="Добавление парсинга любого источника")
|
||||
async def add_sources_all_ist(sources: Parserall):
|
||||
@@ -493,6 +496,10 @@ async def add_sources_all_ist(sources: Parserall):
|
||||
async def get_all_sources():
|
||||
return wp.get_all_sources()
|
||||
|
||||
@app.delete("/delete_sources", summary="Метод удаления источника")
|
||||
async def delete_sources(url: str):
|
||||
return print(wp.delete_sources(url))
|
||||
|
||||
@app.post("/parser_all" , summary="Запуск процеса парсинга любого источника")
|
||||
async def process_parser_all_ist(url: Parserall, background_tasks: BackgroundTasks):
|
||||
background_tasks.add_task(start_pars_all_istochnik, str(url.url), url.promt)
|
||||
@@ -630,6 +637,6 @@ async def get_logs():
|
||||
lines = file.readlines()[-10:] # последние 10 строк
|
||||
return {"logs": lines}
|
||||
|
||||
# if __name__ == "__main__":
|
||||
# uvicorn.run("main:app", port=8001, reload=True)
|
||||
if __name__ == "__main__":
|
||||
uvicorn.run("main:app", port=8001, reload=True)
|
||||
|
||||
|
||||
@@ -268,6 +268,25 @@ def get_all_sources():
|
||||
return {"sources": sources}
|
||||
finally:
|
||||
pass
|
||||
|
||||
def delete_sources(url: str):
|
||||
"""Удаляет источник по URL из таблицы sourse"""
|
||||
conn = get_connection()
|
||||
try:
|
||||
with conn.cursor() as cur:
|
||||
cur.execute("DELETE FROM sourse WHERE url=%s RETURNING *", (url,))
|
||||
deleted_task = cur.fetchone()
|
||||
conn.commit()
|
||||
if deleted_task:
|
||||
return {"message": f"Источник {url} удалён", "deleted": True}
|
||||
else:
|
||||
return {"message": f"Источник с url {url} не найден", "deleted": False}
|
||||
except Exception as e:
|
||||
print(f"Ошибка при удалении источника: {e}")
|
||||
return {"error": str(e), "deleted": False}
|
||||
finally:
|
||||
pass
|
||||
|
||||
# Пример использования
|
||||
# if __name__ == "__main__":
|
||||
# # create_table_config_gpt() # <-- раскомментировать эту строку
|
||||
@@ -278,4 +297,5 @@ def get_all_sources():
|
||||
# })
|
||||
# # print(get_promt("japan"))
|
||||
# # create_table_error_url()
|
||||
# create_table_add_sourse()
|
||||
# create_table_add_sourse()
|
||||
# delete_sources("https://www.taipeitimes.com/")
|
||||
Reference in New Issue
Block a user