Дополнительно
Добавить в закладкиFerium
Администратор
Этот скрипт предназначен для проверки баланса Bitcoin-кошельков, создаваемых из заданных мнемонических фраз (seed-фраз), с использованием прокси-серверов и многопоточности.
Разберём подробно, что делает каждая часть:
Скрипт:
Создаёт временный кошелёк с помощью библиотеки bitcoinlib из заданной мнемонической фразы и возвращает Bitcoin-адрес.
Считывает список прокси из файла Proxy.txt. Каждый прокси должен быть в отдельной строке.
логин:пароль@ip:порт
или просто ip:порт.
http://blockchain.info/rawaddr/<bitcoin_address>
и извлекает баланс из ответа (final_balance).
Баланс возвращается в BTC (переводится из сатоши).
Разберём подробно, что делает каждая часть:
Общая идея
Скрипт:
- Берёт список seed-фраз из файла.
- Для каждой seed-фразы создаёт кошелёк Bitcoin.
- Извлекает адрес кошелька.
- Через сайт blockchain.info проверяет баланс этого адреса.
- Работает через случайный прокси из списка Proxy.txt.
- Записывает результаты (адрес и баланс) в файл Results.txt.
- Делает всё это в несколько потоков, чтобы ускорить процесс.
Разбор функций
1. get_bitcoin_address_from_mnemonic(mnemonic)
Создаёт временный кошелёк с помощью библиотеки bitcoinlib из заданной мнемонической фразы и возвращает Bitcoin-адрес.
- Каждая фраза создаёт уникальный кошелёк.
- Используется witness_type='segwit' (современный формат адресов bc1...).
2. get_proxy_list()
Считывает список прокси из файла Proxy.txt. Каждый прокси должен быть в отдельной строке.
3. get_random_proxy(proxy_list)
Выбирает случайный прокси из списка. Поддерживает формат с авторизацией:логин:пароль@ip:порт
или просто ip:порт.
4. request_with_proxy(url, proxy)
Отправляет HTTP-запрос через заданный прокси, используя библиотеку requests.- Настраивает прокси для HTTP и HTTPS.
- Возвращает JSON-ответ (если успешен).
- Ловит ошибки, таймауты и исключения.
5. get_wallet_balance_with_proxy(wallet_address, proxy)
Формирует URL для blockchain.info:http://blockchain.info/rawaddr/<bitcoin_address>
и извлекает баланс из ответа (final_balance).
Баланс возвращается в BTC (переводится из сатоши).
6. process_mnemonic(mnemonic_phrase, proxy_list, output_file_path)
Основная логика для одной seed-фразы:- Берёт случайный прокси.
- Создаёт Bitcoin-адрес.
- Проверяет баланс.
- Если всё успешно — записывает результат в Results.txt.
- Иначе сообщает об ошибке.
7. main()
Организует весь процесс:- Запрашивает путь к файлу с seed-фразами.
- Считывает все фразы.
- Запрашивает количество потоков.
- Загружает список прокси.
- Запускает многопоточную обработку (ThreadPoolExecutor).
- По завершении пишет сообщение о готовности.
