bring back search

This commit is contained in:
Benny 2023-12-12 18:24:29 +01:00
parent d09c4a5914
commit acc07f760c
No known key found for this signature in database
GPG key ID: 6CD0DBDA5235D481

View file

@ -28,6 +28,7 @@ from pyrogram.raw import functions
from pyrogram.raw import types as raw_types from pyrogram.raw import types as raw_types
from pyrogram.types import InlineKeyboardButton, InlineKeyboardMarkup from pyrogram.types import InlineKeyboardButton, InlineKeyboardMarkup
from tgbot_ping import get_runtime from tgbot_ping import get_runtime
from youtubesearchpython import VideosSearch
from channel import Channel from channel import Channel
from client_init import create_app from client_init import create_app
@ -380,6 +381,19 @@ def link_checker(url: str) -> str:
return "Live stream links are disabled. Please download it after the stream ends." return "Live stream links are disabled. Please download it after the stream ends."
def search_ytb(kw: str):
videosSearch = VideosSearch(kw, limit=10)
text = ""
results = videosSearch.result()["result"]
for item in results:
title = item.get("title")
link = item.get("link")
index = results.index(item) + 1
text += f"{index}. {title}\n{link}\n\n"
return text
@app.on_message(filters.incoming & (filters.text | filters.document)) @app.on_message(filters.incoming & (filters.text | filters.document))
@private_use @private_use
def download_handler(client: Client, message: types.Message): def download_handler(client: Client, message: types.Message):
@ -401,7 +415,8 @@ def download_handler(client: Client, message: types.Message):
# check url # check url
if not re.findall(r"^https?://", url.lower()): if not re.findall(r"^https?://", url.lower()):
redis.update_metrics("bad_request") redis.update_metrics("bad_request")
message.reply_text("please send an URL", quote=True) text = search_ytb(url)
message.reply_text(text, quote=True, disable_web_page_preview=True)
return return
if text := link_checker(url): if text := link_checker(url):