• При парсинге сайта, из-за большого количества запросов блокируется ip, как этого избежать?

    @rrambo
    Да никак не избежать. Либо прокси, либо увеличивать паузу между запросами.. можно же подождать. Закинуть на сервер и пусть работает себе
    Ответ написан
    1 комментарий
  • Почему не срабатывает кнопка pyqt5?

    @PRoGRamm_InG
    Ты забыл добавить функцию add_functionts в retranslateUi()

    Правильный вариант:
    spoiler
    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "АнтиАфк"))
        self.btn_start.setText(_translate("MainWindow", "Запуск"))
        add_functionts()
    Ответ написан
    1 комментарий
  • Написал на основе pydirectinput и pyqt5 простой антиафк, при нажатии кнопки запуск приложение вылетает, что делать?

    Vindicar
    @Vindicar
    RTFM!
    Приложение просто не отвечает после нажатия кнопки 'Запуск'(функция start)

    Ну а что, логично. Читай как устроены оконные приложения, это же азы рабоыт с любым GUI.
    Если кратко, у них в основе цикл, который принимает сообщения от ОС (нажата клавиша, сдвинута мышь, и т.д.) и обрабатывает их.
    PyQT реализует этот цикл сам, ты имеешь дело только с обработчиками событий - но цикл от этого никуда не девается. Всё происходит в одном потоке, так что пока обработчик события работает - цикл стоит, следующие сообщения ждут очереди.
    Так что когда ты делаешь while self.gag==True:, твой обработчик никогда не выйдет из цикла while, никогда не передаст управление оконному циклу, и щелчок по кнопке end никогда не будет обработан (кк и любое другое событие).

    Что делать?
    а) start запускает второй поток, end его останавливает. Кури документацию к модулю threading.
    б) смотри, есть ли в PyQt способ запланировать вызов функции на следующей итерации оконного цикла/спустя некоторое время. В этом случае ты можешь раз за разом планировать вызов своей функции, которая реализует одну итерацию (гапример, шлёт одно нажатие кнопки). Поскольку её вызов будет выполняться средствами оконного цикла, а отрабатывать она будет быстро, это не помешает оконному циклу.
    Ответ написан
    1 комментарий