【发布时间】:2020-07-07 16:52:53
【问题描述】:
我想使用 Tor 向网页发出多个 GET 请求。我想为每个请求使用不同的ip地址,所以我写了这个小程序
from stem import Signal
from stem.control import Controller
import requests
def change_ip():
with Controller.from_port(port=9051) as contr:
contr.authenticate(password='abhishek')
contr.signal(Signal.NEWNYM)
session=requests.session()
session.proxies={}
session.proxies['http']='socks5://127.0.0.1:9051'
session.proxies['https']='socks5://127.0.0.1:9051'
for i in range(5):
r=session.get('http://httpbin.org/ip')
print(r.text)
change_ip()
使用这个,我提出了多个请求,但这个程序没有显示任何输出,它就像我在这张图片中显示的那样卡住了this is the screenshot of terminal where i run this program and it stucked
但是当我删除 session.proxies 代码区域时,代码正在运行并显示输出,但这对我来说毫无意义,因为我想在每次请求后更改 IP 地址。
【问题讨论】:
-
嗨,欢迎来到 SO。您能否详细说明它没有响应或显示错误是什么意思?你是如何尝试运行它的?请用详细的解释更新问题。谢谢。
-
我编辑了这个问题,请帮忙解决这个问题
-
Tor 在端口
9050上运行代理,而不是9051。端口9051仅用于控制/更改 Tor
标签: python python-requests tor