Как сказано в заголовке, я пытаюсь получить доступ к URL через несколько разных прокси последовательно (используя цикл). Сейчас это мой код:Python: Как использовать библиотеку запросов для доступа к URL-адресу через несколько разных прокси-серверов?
import requests
import json
with open('proxies.txt') as proxies:
for line in proxies:
proxy=json.loads(line)
with open('urls.txt') as urls:
for line in urls:
url=line.rstrip()
data=requests.get(url, proxies={'http':line})
data1=data.text
print data1
и мой urls.txt файл:
http://api.exip.org/?call=ip
и мой файл proxies.txt:
{"https": "84.22.41.1:3128"}
{"http":"194.126.181.47:81"}
{"http":"218.108.170.170:82"}
, что я получил в [www.hidemyass .com] [1]
по какой-либо причине выход
68.6.34.253
68.6.34.253
68.6.34.253
как будто он обращается к этому веб-сайту через мой собственный IP-адрес маршрутизатора. Другими словами, он не пытается получить доступ через прокси-серверы, которые я ему даю, это просто цикл и использование моего снова и снова. Что я делаю не так?
Как я уже говорил по одному из ваших предыдущих вопросов, вам будет намного легче понять, что происходит, если вы распечатываете некоторые промежуточные значения, которые вы проходите, или запускаете отладчик или интерактивный визуализатор или какой-либо другой способ их видеть. Если вы напечатали каждую '{'http: строка}', было бы довольно очевидно, что происходит не так. – abarnert
Зачем мне печатать каждую {'http: line}? Разве это не так просто напечатать URL-адрес несколько раз? Не следует ли распечатывать html на веб-странице, чтобы я мог проверить, что это IP-адрес прокси-сервера? – BigBoy1337
Если вы не знаете, что распечатать, вы узнаете, что происходит. Если вы думаете, что знаете, что распечатать, вы узнаете, правы ли вы. Это самая простая отладка. Очевидно, что что-то в вашем скрипте не делает то, что вы ожидали. Первый шаг - выяснить, в какой момент все идет не так, и единственный способ сделать это - посмотреть на ценности и посмотреть, не ошибаются ли они. – abarnert