Add uvloop support for asyncio in api_server and telegram_client; update requirements.txt
This commit is contained in:
+17
-2
@@ -1,12 +1,15 @@
|
||||
import logging
|
||||
import os
|
||||
import mimetypes
|
||||
import asyncio
|
||||
|
||||
import json
|
||||
from datetime import datetime
|
||||
import time
|
||||
from contextlib import asynccontextmanager
|
||||
import random
|
||||
import asyncio
|
||||
import uvloop
|
||||
asyncio.set_event_loop_policy(uvloop.EventLoopPolicy())
|
||||
|
||||
import magic
|
||||
from pyrogram import errors
|
||||
@@ -19,6 +22,9 @@ from rss_generator import generate_channel_rss, generate_channel_html
|
||||
from post_parser import PostParser
|
||||
from url_signer import verify_media_digest
|
||||
|
||||
|
||||
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
logger.setLevel(logging.INFO)
|
||||
|
||||
@@ -64,8 +70,17 @@ if __name__ == "__main__":
|
||||
logger.info(f" {key}: {mask_sensitive_value(str(value))}")
|
||||
else:
|
||||
logger.info(f" {key}: {value}")
|
||||
|
||||
# Log uvloop status
|
||||
logger.info(" uvloop: enabled (asyncio speedup active)")
|
||||
|
||||
uvicorn.run("api_server:app", host=Config["api_host"], port=Config["api_port"], reload=True)
|
||||
uvicorn.run(
|
||||
"api_server:app",
|
||||
host=Config["api_host"],
|
||||
port=Config["api_port"],
|
||||
reload=True,
|
||||
loop="uvloop"
|
||||
)
|
||||
|
||||
async def find_file_id_in_message(message, file_unique_id: str):
|
||||
"""Find file_id by checking all possible media types in message"""
|
||||
|
||||
+1
-1
@@ -208,7 +208,7 @@ class PostParser:
|
||||
|
||||
# Add flag "video" if the message media is VIDEO or ANIMATION and the body text is up to 100 characters.
|
||||
if (message.media in [MessageMediaType.VIDEO, MessageMediaType.ANIMATION] and
|
||||
len(message_text.strip()) <= 100):
|
||||
len(message_text.strip()) <= 200):
|
||||
flags.append("video")
|
||||
|
||||
# Add flag for posts without images
|
||||
|
||||
+3
-2
@@ -1,8 +1,9 @@
|
||||
fastapi==0.115.8
|
||||
uvicorn==0.34.0
|
||||
python-multipart==0.0.20
|
||||
Kurigram==2.1.37
|
||||
TgCrypto==1.2.5
|
||||
Kurigram
|
||||
TgCrypto
|
||||
uvloop
|
||||
pillow==11.1.0
|
||||
feedgen==1.0.0
|
||||
python-dateutil==2.9.0.post0
|
||||
|
||||
@@ -1,5 +1,10 @@
|
||||
import logging
|
||||
import os
|
||||
import asyncio
|
||||
# Add uvloop for asyncio speedup
|
||||
import uvloop
|
||||
asyncio.set_event_loop_policy(uvloop.EventLoopPolicy())
|
||||
|
||||
from pyrogram import Client
|
||||
from config import get_settings
|
||||
|
||||
|
||||
Reference in New Issue
Block a user