import telebot
from pytube import YouTube
bot = telebot.TeleBot("7297640965:AAETe0hgv98gOnJININNfczEeBMRJyI9b7s", parse_mode=None)
# Variable to keep track of the state
awaiting_link = False
# Command handler for /start
@bot.message_handler(commands=['start'])
def send_welcome(message):
bot.reply_to(message, "Howdy, how are you doing?")
# Command handler for /help
@bot.message_handler(commands=['help'])
def send_help(message):
bot.reply_to(message, "This is a test bot! Send /yt_download to download a YouTube video.")
# Command handler for /yt_download
@bot.message_handler(commands=['yt_download'])
def request_video_link(message):
global awaiting_link
awaiting_link = True
bot.send_message(message.chat.id, "Please send the YouTube video link you want to download.")
# Message handler for text messages
@bot.message_handler(func=lambda message: True)
def handle_message(message):
global awaiting_link
if awaiting_link:
try:
yt = YouTube(message.text)
highest_quality_stream = yt.streams.get_highest_resolution()
bot.send_message(message.chat.id, f"Downloading video: {yt.title}")
video_path = highest_quality_stream.download() # Downloads the video to the local directory
with open(video_path, 'rb') as video:
bot.send_video(message.chat.id, video)
os.remove(video_path) # Remove the video file after sending
awaiting_link = False # Reset the state
except Exception as e:
bot.send_message(message.chat.id, f"An error occurred: {e}")
awaiting_link = False # Reset the state
else:
bot.reply_to(message, message.text)
# Start the bot
print("Listening ...")
bot.infinity_polling()
Я нашел на GitHub несколько других ботов Telegram, которые делают то же самое, но с ними у меня та же проблема.
Каждый раз, когда я пытаюсь загрузить видео, я получаю сообщение об ошибке неправильного шлюза. Это код: [code]import telebot from pytube import YouTube
# Variable to keep track of the state awaiting_link = False
# Command handler for /start @bot.message_handler(commands=['start']) def send_welcome(message): bot.reply_to(message, "Howdy, how are you doing?")
# Command handler for /help @bot.message_handler(commands=['help']) def send_help(message): bot.reply_to(message, "This is a test bot! Send /yt_download to download a YouTube video.")
# Command handler for /yt_download @bot.message_handler(commands=['yt_download']) def request_video_link(message): global awaiting_link awaiting_link = True bot.send_message(message.chat.id, "Please send the YouTube video link you want to download.")
# Message handler for text messages @bot.message_handler(func=lambda message: True) def handle_message(message): global awaiting_link if awaiting_link: try: yt = YouTube(message.text) highest_quality_stream = yt.streams.get_highest_resolution() bot.send_message(message.chat.id, f"Downloading video: {yt.title}") video_path = highest_quality_stream.download() # Downloads the video to the local directory with open(video_path, 'rb') as video: bot.send_video(message.chat.id, video) os.remove(video_path) # Remove the video file after sending awaiting_link = False # Reset the state except Exception as e: bot.send_message(message.chat.id, f"An error occurred: {e}") awaiting_link = False # Reset the state else: bot.reply_to(message, message.text)
# Start the bot print("Listening ...") bot.infinity_polling() [/code] Я нашел на GitHub несколько других ботов Telegram, которые делают то же самое, но с ними у меня та же проблема.
Я работаю над автоматизацией конвейера создания контента для моего монетизированного канала YouTube. Я создаю простые видео с использованием фиксированного шаблона Canva , а видеоконтент обычно основан на текстовом основании и генерируется из таких...
Я пытаюсь извлечь расшифровки видео с YouTube с помощью Youtube API или другого пакета Python.
Я нашел код в Google и попробовал.
# importing the module
from youtube_transcript_api import YouTubeTranscriptApi
Я хотел бы изменить название моего видео на YouTube с помощью API данных YouTube v3. Ниже приведен мой код Python. Кажется, все работает хорошо, за исключением того, что я получаю ошибку 403, запрещенную. как я могу это решить? тиа
импортировать...