Гоним трафик в TG-каналы с помощью загрузчика YouTube-видео
Traffic Cardinal Traffic Cardinal  написал 25.12.2024

Гоним трафик в TG-каналы с помощью загрузчика YouTube-видео

Traffic Cardinal Traffic Cardinal  написал 25.12.2024
5 мин
0
3071
Содержание

Летом мы поделились исходным кодом бота для генерации трафика с помощью парсинга музыки из VK в Telegram. Что ж, пришло время поделиться еще одним концептуально схожим, но все же другим ботом — загрузчиком YouTube-роликов. Тем более что после замедлений иной раз реально проще скачать ролик, чтобы каждый раз материться, когда что-то залагает. Впрочем, к черту лирику!

banner banner

Принцип работы бота для скачивания видео из YouTube

Алгоритмически этот бот достаточно прост. И, в отличие от парсера музыки, в нем нет миллиона кнопок. А значит, и код будет легче. Кроме того, для упрощения анализа читателями мы не стали добавлять в него «попрошайку подписки на канал» — ведь вы сможете скопировать ее код из бота для парсинга музыки. Вообще, алгоритм можно было бы описать как: кинул ссылку → на ролик → подписался на канал → скачал ролик. Но все же для тех, кто будет пытаться все это дело использовать, расскажем чуть подробнее:

  1. Бот авторизуется через bot_api в Telegram.
  2. После авторизации бот слушает эфир.
  3. Получив любое сообщение, которое не является ссылкой на YouTube-ролик, бот просит прислать ему ссылку на видео, которое юзер хочет скачать.
  4. После этого он делает API-запросы на серверы YouTube, получает видеоряд и звуковые дорожки для 4 форматов — 114, 360, 720 и 1080.
  5. Все это объединяется в общий массив и выводится пользователю в виде сообщения со ссылками.

Важно: лучшее место для модуля с попрошайкой подписки на канал — между 4-м и 5-м шагом.

Пошаговая инструкция, как сделать Telegram-бота для скачивания видео с YouTube

Для начала нужен Python-сервер. Его вы можете как арендовать, так и развернуть самостоятельно на своем ПК с помощью этой статьи. Если вы совсем новичок, советуем пока не тратиться на аренду и протестировать все на сервере, развернутом собственноручно. Если не новичок — вам виднее, как поступать.

Когда сервер готов — настаиваем его. Для этого пишем в консоль:

pip install telebot

Затем пишем:

pip install yt_dlp

Сервер настроен. Теперь нужен токен для управления ботом.

  1. Для этого пишем BotFather и следуем его инструкциям. После получения токена сохраняем его для удобства.

  1. В корневой папке сервера создаем bot.py и добавляем в него код:

    import telebot

    import yt_dlp

    BOT_TOKEN = '

    ТОКЕН СЮДА

    '

    bot = telebot.TeleBot(BOT_TOKEN)

    def get_download_links(youtube_url):

    options = {

    'quiet': True,

    'noplaylist': True,

    }

    with yt_dlp.YoutubeDL(options) as ydl:

    info = ydl.extract_info(youtube_url, download=False)

    formats = info.get("formats", [])

    links = {}

    audio_url = None

    for f in formats:

    if f.get("vcodec", "none") != "none":

    resolution = f.get("height", None)

    url = f.get("url", None)

    print(f"Обрабатываю формат: {f.get('format_id')} | Разрешение: {resolution}p | URL: {url}")

    if resolution == 360 and f.get("acodec", "none") != "none":

    audio_url = url

    links[360] = url

    print("Найден формат 360p")

    elif resolution and resolution in [144, 720, 1080]:

    if url and url.startswith("https://rr"):

    if resolution == 144:

    links[144] = url

    print("Найден формат 144p")

    elif resolution == 720:

    links[720] = audio_url

    print("Найден формат 720p")

    elif resolution == 1080:

    links[1080] = audio_url

    print("Найден формат 720p")

    print("Итоговые ссылки для скачивания:")

    for resolution, url in links.items():

    print(f"{resolution}p: {url}")

    return [(f"{resolution}p", url) for resolution, url in links.items()]

    @bot.message_handler(commands=['start'])

    def send_welcome(message):

    bot.reply_to(message, "Привет! Отправь мне ссылку на YouTube-видео, и я пришлю тебе ссылки на скачивание.")

    @bot.message_handler(content_types=['text'])

    def handle_message(message):

    youtube_url = message.text.strip()

    if "youtube.com" in youtube_url or "youtu.be" in youtube_url:

    try:

    bot.send_message(message.chat.id, "Ищу ссылки на видео, подождите немного...")

    links = get_download_links(youtube_url)

    if not links:

    bot.send_message(

    message.chat.id,

    "Не удалось найти ссылки для скачивания. Возможно, это защищённое видео или неподдерживаемый формат."

    )

    else:

    response = "Доступные форматы для скачивания:\n"

    for quality, url in links:

    response += f"{quality}: [Скачать]({url})\n"

    bot.send_message(message.chat.id, response, parse_mode='Markdown')

    except Exception as e:

    bot.send_message(message.chat.id, f"Произошла ошибка: {e}")

    else:

    bot.reply_to(message, "Пожалуйста, отправьте корректную ссылку на YouTube-видео.")

    bot.polling()

  2. Вставляем свой токен вместо “ТОКЕН СЮДА”.

  3. Сохраняем bot.py

  4. Пишем в консоль сервера python bot.py

После запуска у вас не должно быть ничего, кроме первой строки. Все, что ниже первой строки на скрине, — результат обработки запроса пользователя.
После запуска у вас не должно быть ничего, кроме первой строки. Все, что ниже первой строки на скрине, — результат обработки запроса пользователя.

Все! Дальше просто проверяем работоспособность.

Демонстрация работы

Воронка настолько быстрая, что даже попрошайка подписки не успеет выбесить
Воронка настолько быстрая, что даже попрошайка подписки не успеет выбесить

Всего 3 клика — и ролик уже качается
Всего 3 клика — и ролик уже качается

Подводя итоги

Как видите, создать бот для загрузки роликов с YouTube — гораздо проще, чем кажется. А если прикрутить к нему попрошайку подписки, будет та же воронка, что и с парсером музыки. Но никто не запрещает и крутить рекламу прямо в бот. Следите за нашим Telegram-каналом и создавайте ботов для арбитража первыми!

ТОП партнерских программ
Год основания: 2014
Leadbit Nutra - опытная партнерская программа с 900+ офферов на ТОПовые ГЕО. Для вебмастеров представлены COD и Trials&SS офферы на любой вкус.

Ключевые особенности:
- эксклюзивные рекламодатели
- огромный выбор офферов по всему миру
- индивидуальные условия для партнеров
- дружелюбные персональные менеджеры
- программа лояльности с ценными призами
  • Вертикали: 1
  • Офферы: 76
  • Минимум: 50 $
Год основания: 2016
Официальная партнерская программа букмекерской конторы MostBet. Программа запущена в 2016 году. За это время несколько тысяч партнеров привели в Mostbet более 15 000 000 игроков со всего мира. Партнерка специализируется на онлайн-казино и беттинге, а выплаты происходят по моделям CPA и RevShare. У продукта Mostbet есть ряд важных преимуществ, которые неизменно привлекают азартных игроков и позволяют достигать высоких Retention Rate и LTV. Например, на сайте можно найти около 1300 слотов и прочих продуктов казино.

Преимущества:
- Досрочные выплаты по запросу;
- Экспертная поддержка менеджеров,
- Высокая конверсия и LTV;
- Уникальные промо-материалы и прелендинги;
- собственный трекер приложения;
- Демо-счет для игроков на любую сумму;
- Персональный промокод для привлечения игроков.
- Минимальная выплата: 50 $
- Периодичность выплат: по запросу
- Реферальная система: 0%
  • Вертикали: 1
  • Офферы: 8
  • Минимум: 50 $
Год основания: 2013
Shakes.pro — крупная партнерская сеть с 2013 года, отбирает самые выгодные nutra-офферы по всему миру (включая in-house). Является частью крупного холдинга. Забудь о бесконечном поиске офферов! Здесь тебе предлагают только то, что уже приносит реальные деньги на все страны.

Основные преимущества

Гарантированный и высокий апрув. Команда сама решит все вопросы с рекламодателями и поделится качественными промо с локализацией.
3 программы лояльности, с которыми ты будешь получать ценные призы за каждый лид.
Ежеквартальные подборки офферов с подробной аналитикой, которые успешнее других по доходам.
  • Вертикали: 1
  • Офферы: 23
  • Минимум: 3000 ₽
Год основания: 2014
Не нашли подходящий оффер? Не беда, подключим под вас

Работать можно со многими источниками трафика. Поможем со всем необходимым для работы. Наша главная цель - обеспечение комфортных и качественных условий работы как для вебмастеров, так и для рекламодателей.

Ключевые особенности:
• Family партнерка. Решим любые боли наших вебмастеров
• Индивидуальные условия работы по любым офферам. Наличие капов
• Выплаты по запросу, без выходных и праздников
• Собственный store с шикарными призами
• Выдаем прилы под iOS/android, готовые крео под залив, аудитории таргетинга
• Максимально подробная статистика, обновляемая в режиме Real-Time
• Саппорт, личный менеджер 24/7
  • Вертикали: 2
  • Офферы: 649
  • Минимум: 50 $
LGaming — это партнерская сеть в вертикали беттинг и гемблинг с более чем 1000 активными офферами от 200 рекламодателей. В партнерке доступен инхаус-продукт BetAndreas. Сеть LGaming создана командой, за плечами которой несколько лет опыта в гемблинг-вертикали CPA-сети Leadbit. Партнерская сеть предлагает проверенные креативы с высоким конвертом и рекомендации по проливу от отдела баинга. Также у компании есть собственный бренд и партнерский сервис по выдаче виртуальных карт.
  • Вертикали: 1
  • Офферы: 1000+
  • Минимум: 100 $
Комментарии
0
Написать комментарий

Здравствуйте! У вас включен блокировщик рекламы, часть сайта не будет работать!