> Никаких ошибок
Неправда ваша. Попробуй запустить exe через терминал, наверняка эксепшн увидишь.
И вообще - "на мгновение появляется терминал" - первая реакция должна быть "запустить из командной строки и посмотреть что оно пишет в терминале".
Pam31, это не куда, это откуда.
description = f"""Баланс пользователя **{ctx.author}** составляет **{cursor.execute("SELECT cash FROM users WHERE id = {}".format(ctx.author.id)).fetchone()[0]} :leaves:**"""
Вот тут у тебя косяк, и в другой аналогичной строчке.
А вообще, не начинай учить питон с ботов, там много подводных камней. Попробуй что попроще для начала, почитай основы SQL, набросай простую программу которая работает с БД. Упростишь себе жизнь потом.
По идее проблемы быть не должно.
в if __name__ == '__main__' ты пишешь только код, который должен отработать для самого первого процесса (корня дерева).
Вызов остальных функций в дочерних процессах - забота самого multiprocessing.
Какая конкретно ошибка вылетает в этом случае?
Только имей ввиду, что если процессов больше, чем ядер - особой эффективности ты всё равно не дождёшься.
Извини за тупой вопрос, но:
пакет mysqld поставился нормально?
сам файл /usr/sbin/mysqld присутствует?
он доступен для того пользователя, из-под которого должен запускаться? sbin вроде только для рута.
Ru5D1mG4me, там требуется стартовый адрес для поиска.
Идея очень простая. Сканируешь регион памяти, если ничего не нашлось - получаешь адрес следующего региона, и делаешь ещё один вызов scan_pattern_page() уже для него. И так пока не найдёшь искомый паттерн.
Проблема в том, что современные ОС рандомизируют адресное пространство процесса, так что порядок модулей и положение кучи может меняться.
Для стартового адреса есть три варианта.
Первый - с помощью base_address получаешь адрес, по которому располагается главный модуль процесса, и сканируешь оттуда. Это может сработать, если искомые данные лежат в секции данных процесса (выделены статически). Маловероятно для ряда ЯП со сборкой мусора.
Проблема в том, что если искомые данные хранятся на куче (heap), то их адрес не будет привязан к адресу модуля. Тут есть второй вариант - использовать allocate(). Документация на неё, похоже, с опечаткой - она выделяет память в куче и возвращает адрес. Можно будет попробовать использовать этот адрес как ориентир - но он скорее всего лежит где-то в середине кучи.
Третий вариант - тупо начать с нулевого адреса и сканировать всё адресное пространство.
DUDE, я имел ввиду чтобы выяснить, есть ли вообще JS-редиректы на сайте и сколько. Если есть, то конечно нужен будет или селениум - или, возможно, сумеете сами определить алгоритм редиректа. Тогда можно будет самостоятельно синтезировать итоговую ссылку по исходной.
requests не исполняет JS, оно тупо принимает поток байтов, а его интерпретация - дело программы.
Чтобы отработать JS, нужен браузер. Вообще я бы посоветовал открыть сайт в браузере и посмотреть там, в инструментах разработчика.
AlexaAioGram, тебе прямым текстом говорят, что функция get_id() не возвращает значение, потому что в ней нет оператора return. Если оператора return нет или он не был выполнен, считается, что функция вернула None.
По приведённой ссылке это написано.
kelly123, потому что это и впрямь некорректный синтаксис. Конкатенация строк в питоне делается не так.
Последний раз тебе говорю: учи азы питона сначала, и только потом берись за бота. Иначе так и будешь грабли собирать.
kelly123, ну так и скажи "хочу найти полностью готовое решение". Его там нет.
Если отправить сообщение в чат, то смотри методы .send() у объектов Context, Guild, User.
Если требуется более заковыристое форматирование, смотри в сторону embed.
Пробуй сначала на простых текстовых строках (а-ля hello world), как разберёшься - пробуй применить к своей задаче.