removed bot logging messages

This commit is contained in:
2026-05-10 13:39:24 +01:00
parent ee746d0abe
commit 54000adeaa
5 changed files with 38 additions and 9 deletions

30
bot.py
View File

@@ -1,5 +1,8 @@
import os
import asyncio
import sys
import concurrent.futures
import logging
from contextlib import suppress
from dotenv import load_dotenv
@@ -10,7 +13,28 @@ from telegram.ext import ApplicationBuilder, CommandHandler, MessageHandler, fil
# Import your existing logic
from agent import parse_page
from database import upload_entry
from scraper import get_clean_content
from scraper import get_clean_content as _get_clean_content
# Run the scraper in a separate thread with its own event loop to avoid
# Windows Selector vs Proactor event loop conflicts between PTB and Playwright.
def _run_scraper_in_thread(url: str) -> str:
# Proactor is required for subprocesses (Playwright) on Windows
if sys.platform == 'win32':
asyncio.set_event_loop_policy(asyncio.WindowsProactorEventLoopPolicy())
loop = asyncio.new_event_loop()
asyncio.set_event_loop(loop)
try:
return loop.run_until_complete(_get_clean_content(url))
finally:
loop.close()
async def get_clean_content(url: str) -> str:
loop = asyncio.get_event_loop()
with concurrent.futures.ThreadPoolExecutor() as pool:
result = await loop.run_in_executor(pool, _run_scraper_in_thread, url)
return result
load_dotenv()
logging.getLogger("httpx").setLevel(logging.WARNING)
@@ -295,6 +319,6 @@ async def _main():
if __name__ == '__main__':
import sys
if sys.platform == 'win32':
asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())
# if sys.platform == 'win32':
asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())
asyncio.run(_main())