if not os.path.exists('downloads'): os.makedirs('downloads')
@bot.message_handler(commands=['start']) def cmd_start(message): bot.send_message( message.chat.id, "? Привет! Отправь мне ссылку на видео из TikTok или YouTube, и я помогу тебе скачать видео." )
@bot.message_handler(func=lambda message: " tiktok.com " in message.text or " youtube.com " in message.text or " youtu.be " in message.text) def download_video(message): url = message.text.strip() try: bot.send_message(message.chat.id, "⏳ Начинаю загрузку...")
import telebot
from telebot.types import InputMediaVideo
import yt_dlp
bot = telebot.TeleBot("7908057616:AAF6TKB7CtUBgybQRL5Gs9U48BaXDq_b-yk")
if not os.path.exists('downloads'):
os.makedirs('downloads')
@bot.message_handler(commands=['start'])
def cmd_start(message):
bot.send_message(
message.chat.id,
"? Привет! Отправь мне ссылку на видео из TikTok или YouTube, и я помогу тебе скачать видео."
)
@bot.message_handler(func=lambda message: " tiktok.com " in message.text or " youtube.com " in message.text or " youtu.be " in message.text)
def download_video(message):
url = message.text.strip()
try:
bot.send_message(message.chat.id, "⏳ Начинаю загрузку...")
ydl_opts = {
'format': 'best',
'outtmpl': 'downloads/%(title)s.%(ext)s'
}
with yt_dlp.YoutubeDL(ydl_opts) as ydl:
info = ydl.extract_info(url, download=True)
filename = ydl.prepare_filename(info)
with open(filename, 'rb') as video:
bot.send_video(message.chat.id, video, caption="? Вот твое видео!")
os.remove(filename)
except Exception as e:
bot.send_message(message.chat.id, f"❌ Произошла ошибка: {str(e)}")
if __name__ == "__main__":
bot.infinity_polling()