• XSS.stack #1 – первый литературный журнал от юзеров форума

Чекер ETH адресов на балансы

antikrya

(L2) cache
Пользователь
Регистрация
18.01.2019
Сообщения
347
Реакции
265
Гарант сделки
1
Нуждающимся.
Чекер ETH адресов на балансы, показывает ТОЛЬКО нативный баланс, не показывает баланс токенов.
Работает без прокси. Если Вас забанит, то увеличьте тайминг между запросами.

Python:
import time
from web3 import Web3

# Публичный узел Ethereum
infura_url = "https://cloudflare-eth.com"
w3 = Web3(Web3.HTTPProvider(infura_url))

def check_balance(wallet_address):
    """Проверяет баланс указанного адреса кошелька."""
    try:
        wallet_address = w3.to_checksum_address(wallet_address)
    except ValueError:
        return None, f"Invalid address: {wallet_address}"

    try:
        balance = w3.eth.get_balance(wallet_address)
    except Exception as e:
        return None, f"Error fetching balance for {wallet_address}: {str(e)}"
    
    balance_in_ether = w3.from_wei(balance, 'ether')
    return balance_in_ether, None

def main():
    with open('wallets.txt', 'r') as wallets_file:
        wallet_addresses = wallets_file.read().splitlines()

    # Открытие файла для записи результатов
    with open('balances.txt', 'w') as result_file:
        for index, address in enumerate(wallet_addresses, start=1):
            balance_info, error = check_balance(address)

            # Формируем строку для записи; если возникла ошибка, записываем её
            if error:
                result_line = f"Wallet {index}: {address} - Error: {error}"
            else:
                # Записываем, если баланс не равен нулю
                if balance_info > 0:
                    result_line = f"Wallet {index}: {address} has balance of {balance_info:.18f} ETH"
                else:
                    continue  # Пропустить запись, если баланс равен нулю

            # Сразу записываем результат в файл
            result_file.write(result_line + "\n")
            result_file.flush()  # Принудительно записываем данные из буфера в файл
            print(result_line)  # Выводим результат с номером кошелька
            
            # Задержка между запросами
            time.sleep(0.1)

if __name__ == "__main__":
    start_time = time.time()
    main()
    print(f"Execution time: {time.time() - start_time} seconds")
 

Вложения

  • eth.PNG
    eth.PNG
    53.2 КБ · Просмотры: 43


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх