Spaces:
Running
Running
Update main.py
Browse files
main.py
CHANGED
@@ -1,4 +1,5 @@
|
|
1 |
import logging
|
|
|
2 |
from pyrogram import Client, filters
|
3 |
from pyrogram.types import Message, InlineKeyboardMarkup, InlineKeyboardButton
|
4 |
from pyrogram.types import *
|
@@ -63,11 +64,16 @@ async def callback_button(client: Client, cb: CallbackQuery):
|
|
63 |
except Exception as e:
|
64 |
await cb.answer(f"Error: {str(e)}", show_alert=True)
|
65 |
|
|
|
|
|
|
|
|
|
|
|
66 |
@client.on_message(filters.text & filters.private)
|
67 |
async def tiktok_downloader(client: Client, message: Message):
|
68 |
if message.text:
|
69 |
-
|
70 |
-
if not
|
71 |
return await message.reply_text("Invalid link")
|
72 |
callback_data = generate_callback_data(message.from_user.id, query)
|
73 |
keyboard = InlineKeyboardMarkup(
|
@@ -83,7 +89,7 @@ async def tiktok_downloader(client: Client, message: Message):
|
|
83 |
try:
|
84 |
dll = await message.reply_text("Processing....")
|
85 |
await message.delete()
|
86 |
-
response = await Tiktok.download(tt,
|
87 |
await message.reply_video(response[0], reply_markup=keyboard)
|
88 |
await dll.delete()
|
89 |
except Exception as e:
|
|
|
1 |
import logging
|
2 |
+
import re
|
3 |
from pyrogram import Client, filters
|
4 |
from pyrogram.types import Message, InlineKeyboardMarkup, InlineKeyboardButton
|
5 |
from pyrogram.types import *
|
|
|
64 |
except Exception as e:
|
65 |
await cb.answer(f"Error: {str(e)}", show_alert=True)
|
66 |
|
67 |
+
def is_tiktok_url(url):
|
68 |
+
pattern = r"(https?)://(vt|www)\.tiktok\.com/(\w+)"
|
69 |
+
match = re.search(pattern, name)
|
70 |
+
return bool(match)
|
71 |
+
|
72 |
@client.on_message(filters.text & filters.private)
|
73 |
async def tiktok_downloader(client: Client, message: Message):
|
74 |
if message.text:
|
75 |
+
query_url = message.text
|
76 |
+
if not is_tiktok_url(query_url)
|
77 |
return await message.reply_text("Invalid link")
|
78 |
callback_data = generate_callback_data(message.from_user.id, query)
|
79 |
keyboard = InlineKeyboardMarkup(
|
|
|
89 |
try:
|
90 |
dll = await message.reply_text("Processing....")
|
91 |
await message.delete()
|
92 |
+
response = await Tiktok.download(tt, query_url)
|
93 |
await message.reply_video(response[0], reply_markup=keyboard)
|
94 |
await dll.delete()
|
95 |
except Exception as e:
|