/XPointsMakerBot

Bot that mines coins in X-Points Maker

Primary LanguagePython

📕 Дисклаймер

Бот создан исключительно с образовательной целью для изучения возможностей языка Python. Ваши действительные аккаунты могут быть забанены, если вы будете использовать его не по назначению. Автор снимает с себя какую либо ответственность. Все что вы делаете, вы делаете на свой страх и риск.

🧱 Функционал

Функционал Поддерживается
Многопоточность
Привязка прокси к сессии
Авто-повышение уровня для увеличения добычи монет
Рандомное время сна между кликами
Авто-ставка со случайным выбором
Поддержка выбора не рискованной ставки
Ограничение ТАПА максимальной суммой
Поддержка SSL
Выполнение квестов -
Поддержка файлов сессий .session -

⚙ Настройки

  1. Для запуска бота нужно создать файл построчно с извлеченным значением поля webAppInitData из запроса https://points-bot-api.bookmaker.xyz/get-profile. Должна быть строка вида:

user=%7B%22id4345646456451%2C%22first_name%22%3A%dfgdfgdfg%22%2C%22last_name%22%3A%22%22%2C%22username%22%3A%dfghsgrdfgdfg%22%2C%22language_code%22%3A%22en%22%2C%22allows_write_to_pm%22%3Atrue%7D&chat_instance=-457567675675&chat_type=sender&auth_date=175657657&hash=66487465e9877w98rf7sdfsdjh48484343herfuh4y4rwseifs

  1. В той же последовательности заполнить файл proxies.txt адресами http://login:pass@ip:port. Если для какого-то аккаунта не нужен прокси то, в соответствущей строке proxies.txt ввести слово none

ВНИМАНИЕ:

Из-за ошибки в aiohttp-3.10.2 поддерживается ТОЛЬКО HTTP/HTTPS прокси! Можете попробовать использовать версию aiohttp-3.9.5 она работала с SOCKS.

  1. Аналогично, НО НЕ ОБЯЗАТЕЛЬНО заполнить файл user-agent.txt по порядку для каждой сессии.

  2. Установите Python 3.12 и зависимости pip install -r requirements.txt. Тестировалось также на Python 3.11

  3. Если у вас ошибки socket или SSL то необходимо включить поддержку SSL в настройках. Предварительно установив файлы сертификатов в систему. Загляните в папку проекта SSL.

⚡ Как добыть webAppInitData

Самый сложный и идеальный вариант:

  1. Подключаем телефон по USB к ПК.

  2. Включаем Режим разработчика и режим ОТладка по USB.

  3. Включаем в телеграмм режим отладки WEB VView

  4. Запускаем на ПК Google Chrome и открываем chrome://inspect/#devices

  5. Запускаем приложение на телефоне

  6. Возвращаемся в Chrome и ждем появления своего устройства ниже записи Remote Target #LOCALHOST

  7. Должна появится строка вида WebView in org.telegram.messenger.web

  8. Жмем на ссылку inspect, должно открыться новое окно с симулятором где в увидите вашу игру

  9. Справа выбираем закладку Network

  10. Возвращаемся к телефону с запущенной игрой, в игре в правом верхнем углу жмем на три точки и выбираем Обновить страницу

  11. В симулятор у нас должна заполниться вкладка Network событиями. Находим в столбце name поле get-profile со статусом 200 жмем

  12. Справа откроется весь POST запрос с ответом. Должна быть выбрана закладка Headers.

  13. Ищем поле webAppInitData тыкаем правой кнопкой мыши и выбираем Copy Value

P.S.

Здесь же можно "стырить" свой настоящий user-agent

Уффф... Написал.

Если что-то пошло не так постарайтесь "гугулить" в сети особенно первые 4 пункта. Если устройство не появляется в списке поищите информацию как запускать команду adb devices в консоли. Если adb devices молчит? Проблема может быть связана с тем, что на ПК заняты порты с 5540 до 5590 какими-то другими службами! В чистой системе они всегда свободные!

Самый лучший вариант:

  1. Запускаем WEB Telegram (например Chrome)

  2. Запускаем окно отладки F12 для Chrome

  3. Запускаем приложение X-Point

  4. Переходим в отладке на вкладку Console

  5. Пишем команду allow pasting

  6. Еще одну new URLSearchParams(document.querySelector('iframe').src.split('#')[1]).get('tgWebAppData')

  7. Вуаля копируем что нам надо!

🧭 Дорожная карта

  • Добавить поддержку session телеграм
  • Добавить обработчики исключений
  • Дописать инструкции