Загрузка...

Pyrogram обход окошка с водом номера

Тема в разделе Python создана пользователем b3ast1ns1d3 23 апр 2025. 312 просмотров

  1. b3ast1ns1d3
    b3ast1ns1d3 Автор темы 23 апр 2025 291 21 июл 2024
    Всем привет! Пишу скрипт для тг акков. Софт заходит на акк, совершает некоторые телодвижения и идет на следующий акк, но возникает проблема, когда сессия невалидна и выскакивает окно
    [IMG]
    подскажите пожалуйста, как можно обойти это окно, если обработчики ошибок не подходят(либо я какое то упустил), а нормальных вариантов решения в интернете нет.
     
  2. Y4sperMaglot
    ну проверяй, есть ли заход на аккаунт, если нет - значит вылезла авторизация, пропускаешь и идешь к следующему акку
     
    1. Посмотреть предыдущие комментарии (11)
    2. Y4sperMaglot
      b3ast1ns1d3,
      b3ast1ns1d3,
      Python
      app = Client(session_name, api_id=api_id, api_hash=api_hash)

      try:
      async with app:
      me = app.get_me()
      print(f"Сессия валидна!")
      except:
      print("Сессия невалидна! Требуется переавторизация.")
      нука а сделай так
      23 апр 2025 Изменено
    3. b3ast1ns1d3 Автор темы
      Y4sperMaglot, все точно так же. ему не нравится апп.гет-ми
    4. b3ast1ns1d3 Автор темы
      Y4sperMaglot, а, прикол, теперь 3 валида из 3, когда было 2 валида
  3. Фарш
    смотри документацию пюрограм, мб есть какой то метод проверки на такой случай
     
    1. Фарш
      Фарш,

      Python
      from pyrogram import Client
      from pyrogram.errors import AuthKeyUnregistered, SessionExpired

      api_id = 12345 # Ваш API ID
      api_hash = "ваш_api_hash" # Ваш API Hash
      session_name = "my_session" # Имя сессии

      app = Client(session_name, api_id=api_id, api_hash=api_hash)

      def check_session_validity():
      try:
      # Пробуем получить информацию о себе
      with app:
      me = app.get_me()
      print(f"Сессия валидна! ID: {me.id}, Username: {me.username}")
      return True
      except (AuthKeyUnregistered, SessionExpired):
      print("Сессия невалидна! Требуется переавторизация.")
      return False
      except Exception as e:
      print(f"Ошибка при проверке сессии: {e}")
      return False

      if not check_session_validity():
      # Если сессия невалидна, запускаем новый вход
      print("Запуск авторизации...")
      app = Client(session_name, api_id=api_id, api_hash=api_hash)
      app.run() # Это вызовет окно ввода номера телефона и кода
      print("Авторизация успешна!")
      else:
      print("Работаем с существующей сессией.")
      23 апр 2025 Изменено
    2. Фарш
    3. b3ast1ns1d3 Автор темы
    4. Посмотреть следующие комментарии (7)
  4. n1s_01
    нашел фикс?
     
  5. protect
    не используй with / async with
    внутри стоит прокладка __enter__ которая вызывает start, который в свою очередь делает UI для входа

    чтобы этого не было используй методы

    connect()
     
Top
Загрузка...