Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос
The_Sketch

Preiwer

Веб разработчик x)
  • 2
    вклад
  • 22
    вопроса
  • 11
    ответов
  • 18%
    решений
Комментарии
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Как я могу передать функцию agree из callback_queries.py на main.py?

    The_Sketch
    Preiwer @The_Sketch Автор вопроса
    Vindicar, хотя-бы ссылку на какой то ресурс отправьте
    Написано 18 июн.
  • Как я могу передать функцию agree из callback_queries.py на main.py?

    The_Sketch
    Preiwer @The_Sketch Автор вопроса
    Vindicar, можете показать пример разбиения телеграм бота на модулей например все кнопки в buttons.py, все message_handlers в message_handlers.py
    Написано 18 июн.
  • Как я могу передать функцию agree из callback_queries.py на main.py?

    The_Sketch
    Preiwer @The_Sketch Автор вопроса
    Vindicar, так вот посмотрите, для того чтобы отправлять сообщения нужно создать эземпляр Bot(), но оно у меня уже создано но при импорте from main import bot
    python main.py 
    Traceback (most recent call last):
      File "/home/preiwer/Documents/Our_folder/bit_bot/main.py", line 4, in <module>
        from callback_queries import agree
      File "/home/preiwer/Documents/Our_folder/bit_bot/callback_queries.py", line 3, in <module>
        from main import bot
      File "/home/preiwer/Documents/Our_folder/bit_bot/main.py", line 4, in <module>
        from callback_queries import agree
    ImportError: cannot import name 'agree' from partially initialized module 'callback_queries' (most likely due to a circular import) (/home/preiwer/Documents/Our_folder/bit_bot/callback_queries.py)

    поэтому хотел сделать вот так
    внутри функции
    async def agree(callback_query: types.CallbackQuery, bot):
    передать аргумент bot
    и вызвать вот таким образом
    dp.register_callback_query_handler(
        lambda agre: start(agre,bot=bot),
        lambda c: c.data == 'agree'
    )
    но появляется баг. ПОсле нажатия на кнопку ✅ Yes I agree бот отправляет сообщение который отправляется при команде /start. То есть вот это
    648f1c697c9aa888427906.png
    Написано 18 июн.
  • Как я могу передать функцию agree из callback_queries.py на main.py?

    The_Sketch
    Preiwer @The_Sketch Автор вопроса
    Алан Гибизов, я вообще то пробовал всё, и если бы все эти пробы дали быкакой то результат то этого вопроса тут бы не было)
    Написано 18 июн.
  • Как я могу передать функцию agree из callback_queries.py на main.py?

    The_Sketch
    Preiwer @The_Sketch Автор вопроса
    Алан Гибизов, подумать только, по вашему я щас должен создать новый вопрос-дубликат?
    Написано 18 июн.
  • Что означает это ошибка и как его исправить?

    The_Sketch
    Preiwer @The_Sketch Автор вопроса
    можете показать на примере этого кода
    Написано 04 июн.
  • В чём ошибка этого python код с использованием pyrogram?

    The_Sketch
    Preiwer @The_Sketch Автор вопроса
    но как тогда отправлять код?
    Написано 03 июн.
  • Не передаются данные eel, что делать?

    The_Sketch
    Preiwer @The_Sketch
    Pr0max, а вы установили aioify и stdlib_list?
    Написано 03 июн.
  • Как можно днамически создавать pyrogram аккаунты?

    The_Sketch
    Preiwer @The_Sketch Автор вопроса
    Preiwer, как можно сделать
    bt.idle()
    bt_2.idle()
    bt.stop()
    bt_2.stop() вот это место в фунции или же классы
    Написано 02 июн.
  • Как можно днамически создавать pyrogram аккаунты?

    The_Sketch
    Preiwer @The_Sketch Автор вопроса
    Алан Гибизов, как создать динамические pyrogram аккаунты (То есть экземплар класса User_bot). То есть нужно создать функцию который автоматически создаёт
    bt = User_Bot('bot_1", "+123456")
    bt.start()
    
    bt_2 = User_Bot('bot_2", "+123456")
    bt_2.start()
    
    bt.idle()
    bt_2.idle()
    bt.stop()
    bt_2.stop()
    Написано 02 июн.
  • Как запускать pyrogram и flask в одно и тоже время?

    The_Sketch
    Preiwer @The_Sketch Автор вопроса
    utsiye,
    def flask_func():
        app = Flask(__name__)
        app.run(debug=True)
    
    def pyrogram_func():
        bot = Client("user_bot_1", 22096167, "a64eb92bcc017e536fce88145a376bf1")
        bot.run()
    
    thread1=threading.Thread(target=flask_func).start()     
    pyrogram_func()


    * Serving Flask app 'app'
     * Debug mode: on
    WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
     * Running on http://127.0.0.1:5000
    Press CTRL+C to quit
    Exception in thread Thread-1 (flask_func):
    Traceback (most recent call last):
      File "/usr/lib64/python3.11/threading.py", line 1038, in _bootstrap_inner
        self.run()
      File "/usr/lib64/python3.11/threading.py", line 975, in run
        self._target(*self._args, **self._kwargs)
      File "/home/preiwer/Documents/Our_folder/forwarder/.venv/SITE/app.py", line 100, in flask_func
        app.run(debug=True)
      File "/home/preiwer/Documents/Our_folder/forwarder/.venv/lib64/python3.11/site-packages/flask/app.py", line 889, in run
        run_simple(t.cast(str, host), port, self, **options)
      File "/home/preiwer/Documents/Our_folder/forwarder/.venv/lib64/python3.11/site-packages/werkzeug/serving.py", line 1097, in run_simple
        run_with_reloader(
      File "/home/preiwer/Documents/Our_folder/forwarder/.venv/lib64/python3.11/site-packages/werkzeug/_reloader.py", line 439, in run_with_reloader
        signal.signal(signal.SIGTERM, lambda *args: sys.exit(0))
      File "/usr/lib64/python3.11/signal.py", line 56, in signal
        handler = _signal.signal(_enum_to_int(signalnum), _enum_to_int(handler))
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    ValueError: signal only works in main thread of the main interpreter


    простите пожалуйста. Я первый раз работаю с потоками.
    Написано 31 мая
  • Как запускать pyrogram и flask в одно и тоже время?

    The_Sketch
    Preiwer @The_Sketch Автор вопроса
    from flask import Flask, request, render_template, url_for, redirect   
    import threading
    import asyncio
    import signal
    from pyrogram import Client  
    
    def flask_func():
        app = Flask(__name__)
        app.run(debug=True)
    
    def pyrogram_func():
        bot = Client("user_bot_1", 22096167, "a64eb92bcc017e536fce88145a376bf1")
        loop = asyncio.new_event_loop()
        asyncio.set_event_loop(loop)
        bot.run()
    
    thread1=threading.Thread(target=flask_func).start()
    thread2=threading.Thread(target=pyrogram_func).start()

    выходит вот такая ошибка
    * Serving Flask app 'app'
     * Debug mode: on
    Exception in thread Thread-2 (pyrogram_func):
    Traceback (most recent call last):
      File "/usr/lib64/python3.11/threading.py", line 1038, in _bootstrap_inner
        self.run()
      File "/usr/lib64/python3.11/threading.py", line 975, in run
        self._target(*self._args, **self._kwargs)
      File "/home/preiwer/Documents/Our_folder/forwarder/.venv/SITE/app.py", line 103, in pyrogram_func
        bot = Client("user_bot_1", 22096167, "a64eb92bcc017e536fce88145a376bf1")
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/home/preiwer/Documents/Our_folder/forwarder/.venv/lib64/python3.11/site-packages/pyrogram/client.py", line 267, in __init__
        self.dispatcher = Dispatcher(self)
                          ^^^^^^^^^^^^^^^^
      File "/home/preiwer/Documents/Our_folder/forwarder/.venv/lib64/python3.11/site-packages/pyrogram/dispatcher.py", line 58, in __init__
        self.loop = asyncio.get_event_loop()
                    ^^^^^^^^^^^^^^^^^^^^^^^^
      File "/usr/lib64/python3.11/asyncio/events.py", line 677, in get_event_loop
        raise RuntimeError('There is no current event loop in thread %r.'
    RuntimeError: There is no current event loop in thread 'Thread-2 (pyrogram_func)'.
    WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
     * Running on http://127.0.0.1:5000
    Press CTRL+C to quit
    Exception in thread Thread-1 (flask_func):
    Traceback (most recent call last):
      File "/usr/lib64/python3.11/threading.py", line 1038, in _bootstrap_inner
        self.run()
      File "/usr/lib64/python3.11/threading.py", line 975, in run
        self._target(*self._args, **self._kwargs)
      File "/home/preiwer/Documents/Our_folder/forwarder/.venv/SITE/app.py", line 100, in flask_func
        app.run(debug=True)
      File "/home/preiwer/Documents/Our_folder/forwarder/.venv/lib64/python3.11/site-packages/flask/app.py", line 889, in run
        run_simple(t.cast(str, host), port, self, **options)
      File "/home/preiwer/Documents/Our_folder/forwarder/.venv/lib64/python3.11/site-packages/werkzeug/serving.py", line 1097, in run_simple
        run_with_reloader(
      File "/home/preiwer/Documents/Our_folder/forwarder/.venv/lib64/python3.11/site-packages/werkzeug/_reloader.py", line 439, in run_with_reloader
        signal.signal(signal.SIGTERM, lambda *args: sys.exit(0))
      File "/usr/lib64/python3.11/signal.py", line 56, in signal
        handler = _signal.signal(_enum_to_int(signalnum), _enum_to_int(handler))
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    ValueError: signal only works in main thread of the main interpreter
    Написано 31 мая
  • Как запускать pyrogram и flask в одно и тоже время?

    The_Sketch
    Preiwer @The_Sketch Автор вопроса
    Спасибо огромное. Сейчас попробую)
    Написано 31 мая
  • Как запускать pyrogram и flask в одно и тоже время?

    The_Sketch
    Preiwer @The_Sketch Автор вопроса
    Алан Гибизов, Понятно спасибо за объяснение)
    Написано 30 мая
  • Как запускать pyrogram и flask в одно и тоже время?

    The_Sketch
    Preiwer @The_Sketch Автор вопроса
    Алан Гибизов, Ок. Можете порекомендовать "правильные" теги для этого вопроса
    Написано 30 мая
  • Как запускать pyrogram и flask в одно и тоже время?

    The_Sketch
    Preiwer @The_Sketch Автор вопроса
    Модератор, ок
    Написано 30 мая
  • Как запускать pyrogram и flask в одно и тоже время?

    The_Sketch
    Preiwer @The_Sketch Автор вопроса
    Модератор, 3.1. Указывать только теги, имеющие непосредственное отношение к вопросу. Тогда какие теги использовать? Python, Pyrogram, Flask
    Написано 30 мая
  • Как запускать pyrogram и flask в одно и тоже время?

    The_Sketch
    Preiwer @The_Sketch Автор вопроса
    Модератор, Да я прочитал Регламент. Но по моему мнению мой вопрос не нарушил ни один из этих пунктов
    Написано 30 мая
  • Как запускать pyrogram и flask в одно и тоже время?

    The_Sketch
    Preiwer @The_Sketch Автор вопроса
    Модератор, Сколько тогда. Дайте пж совет. Моой вопрос имеет отношение к Python Flask и Python Pyrogram. То есть их совместную работу в одном файле
    Написано 30 мая
  • Как запускать pyrogram и flask в одно и тоже время?

    The_Sketch
    Preiwer @The_Sketch Автор вопроса
    Модератор, такие мелкие кусочки по моему не надо ставлять тегом code)
    Написано 30 мая
  • 1
  • 2
  • 3
  • Следующие →
Самые активные сегодня
  • vpetrov
    Виктор Петров
    • 6 ответов
    • 0 вопросов
  • dimonchik2013
    Dimonchik
    • 6 ответов
    • 0 вопросов
  • vabka
    Василий Банников
    • 5 ответов
    • 0 вопросов
  • SunTechnik
    • 4 ответа
    • 0 вопросов
  • lxst
    Resolut
    • 1 ответ
    • 2 вопроса
  • pindschik
    pindschik
    • 3 ответа
    • 0 вопросов
  • © Habr
  • О сервисе
  • Правила
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации