Загрузка...

Простенький парсер и спамер Telegram на pyrogram

Тема в разделе Python создана пользователем Роснефть 18 мар 2023. 1918 просмотров

  1. Роснефть
    Роснефть Автор темы 18 мар 2023 Залью полный бак 2186 18 июн 2017
    Python
    [/LEFT]
    from pyrogram import Client

    # Создаём клиент
    app = Client("client", api_id=12345, api_hash="0123456789abcdef0123456789abcdef")
    app.start()

    # Получаем ID чатов

    chat_ids = []
    members = app.get_chat_members(chat_id="@your_bot_username") #введите юзернейм бота
    for member in members:
    chat = member.chat
    if chat.chat_type in ["group", "supergroup", "channel"]:
    chat_ids.append(chat.id)

    # Отправка сообщений в каждом чате
    message_text = "message"
    for chat_id in chat_ids:
    try:
    app.send_message(chat_id, message_text)
    except Exception as e:
    print(f"Ошибка при отправке сообщения в чат {chat_id}: {e}")

    # Закрываем соединение с API Telegram
    app.stop()


    [LEFT]

    Мб кому надо. На коленке буквально, не гнобить:finger_up:
     
    18 мар 2023 Изменено
    1. brozhin
      Роснефть, не понял что именно нужно вписывать в юзернейм бота, выдает ошибку
      raise getattr(
      pyrogram.errors.exceptions.bad_request_400.ChannelInvalid: Telegram says: [400 CHANNEL_INVALID] - The channel parameter is invalid (caused by "channels.GetParticipants")
  2. Утя
    Утя 23 мар 2023 Утка говорит: "Это место для вашей рекламы" 5577 11 янв 2019
    Можешь подсказать, как сделать просто выгрузку в файл списках всех польхователей канала?

    import pyrogram



    api_id =

    api_hash = ''

    group_id = -


    # Create a Pyrogram client

    client = pyrogram.Client('my_session', api_id=api_id, api_hash=api_hash)


    # Start the client

    client.start()


    # Get a list of all the users in the group

    all_users = []

    members = client.get_chat_members(group_id)

    for member in members:

    all_users.append(member.user)


    # Upload the list of users to a text file

    with open('users.txt', 'w') as f:

    for user in all_users:

    f.write(user.username)


    # Stop the client

    client.stop()


    Пробовал так, но не выходит
     
    23 мар 2023 Изменено
    1. Посмотреть предыдущие комментарии (1)
    2. Crimson
      Роснефть, как я понял ему нужно вытянуть всех юзеров в текстовый файл, про бд тут нечего нет
    3. Утя
      Роснефть, В файл, но он пустым приходит, хотя в терминале вывод работает как нужно
    4. Роснефть Автор темы
      Утя, Трай это, с пропоя чекал че там, если что завтра пересмотрю
      Python
      import pyrogram

      api_id =
      api_hash = ''
      group_id = -


      # Create a Pyrogram client
      with pyrogram.Client('my_session', api_id=api_id, api_hash=api_hash) as client:
      # Start the client
      client.start()

      # Get a list of all the users in the group
      all_users = []
      members = client.iter_chat_members(group_id)
      for member in members:
      all_users.append(member.user)

      # Upload the list of users to a text file
      with open('users.txt', 'w') as f:
      for user in all_users:
      f.write(user.username + "\n")

      # Stop the client
      client.stop()
  3. Нефть
    Нефть 6 ноя 2024 0 6 ноя 2024
    напиши спаммер для групп +реп тебе
     
Top
Загрузка...