Добавьте прокси-сервер Tor в вызовы API

#python #proxy #vpn #tor

Вопрос:

Я несколько раз пытаюсь вызвать конечную точку детализации адреса блокчейна. Через некоторое время мой IP-адрес заблокирован, и ответ на мой звонок составляет 429 Слишком много запросов. Я хотел бы добавить перенаправление прокси-сервера Tor в свой метод, чтобы получать новый IP-адрес один раз при 5-10 вызовах. Прокси-сервер Tor генерирует новый IP-адрес каждые 5 секунд. Обычно меня забаняют через 20 секунд, если я вызываю ресурс в 5 потоках (у каждого потока один и тот же IP-адрес). Не могли бы вы, пожалуйста, предоставить реализацию моего метода python с перенаправлением вызовов через TOR? Мне это нужно для того, чтобы совершать неограниченные звонки на конечную точку детализации адреса блокчейна. Пример вызова конечной точки: Войдите в https://blockchain.info/multiaddr?active={addr}amp;n=1. Где {addr} заменяется публичным адресом btc, пример: https://blockchain.info/multiaddractive=1LZT6gy6WXTEtiycQESchuRHjgGzfgX2paamp;n=1 Примечание. конечная точка будет вызываться из нескольких потоков или многопроцессорной обработки. У каждого потока должен быть свой уникальный IP-адрес. Мне нужна логика, которая даст каждому потоку действительный уникальный IP-адрес, а затем выполнит вызов.

Ниже приведен мой метод python:

 def getBalance(addr):
    try:
        time.sleep(1)
        response = requests.get(
            f'https://blockchain.info/multiaddr?active={addr}amp;n=1')

        return (
            response.json()['wallet']
        )
    except:
        print("your Ip got banned. Turn your VPN on")
        time.sleep(5)
        getBalance(addr)
        pass
getBalance() Method is called by each thread.