我目前正在尝试通过 python 获取新的 ip。
我在 stackoverflow 上找到了这个脚本:
import urllib2
from TorCtl import TorCtl
proxy_support = urllib2.ProxyHandler({"http" : "127.0.0.1:8118"})
opener = urllib2.build_opener(proxy_support)
def newId():
conn = TorCtl.connect(controlAddr="127.0.0.1", controlPort=9051, passphrase="123")
conn.send_signal("NEWNYM")
for i in range(0, 10):
print "case "+str(i+1)
newId()
proxy_support = urllib2.ProxyHandler({"http" : "127.0.0.1:8118"})
urllib2.install_opener(opener)
print(urllib2.urlopen("http://www.ifconfig.me/ip").read())
我有我的 vidalia 运行和 privoxy。我的设置正确:
在系统首选项中(在 mac 上):
网络代理 (HTTP):127.0.0.1:8118 和 HTTPS 一样
在我的 privoxy 配置文件中有这一行:
forward-socks5 / 127.0.0.1:9051 .
在我的 vidalia 设置中,我有:
尽管当我运行代码时它仍然卡在案例 1 上并且我无法获得 ip。 这是我的 vidalia 的日志:
May 04 19:15:27.381 [Notice] New control connection opened.
May 04 19:15:27.382 [Notice] New control connection opened.
May 04 19:15:33.709 [Notice] New control connection opened.
May 04 19:15:38.653 [Notice] New control connection opened.
May 04 19:15:57.382 [Notice] New control connection opened.
May 04 19:15:57.463 [Notice] New control connection opened.
May 04 19:15:57.464 [Notice] New control connection opened.
May 04 19:16:03.710 [Notice] New control connection opened.
May 04 19:16:19.656 [Notice] New control connection opened.
May 04 19:16:22.448 [Notice] New control connection opened.
May 04 19:16:22.569 [Notice] New control connection opened.
May 04 19:16:22.900 [Notice] New control connection opened.
May 04 19:16:27.382 [Notice] New control connection opened.
May 04 19:16:27.412 [Notice] New control connection opened.
May 04 19:16:27.413 [Notice] New control connection opened.
我做错了什么?
编辑:
当配置文件中的行处于事件状态时,我无法加载任何站点。
显然,如果我等待的时间足够长,我会得到一个错误:
urllib2.HTTPError: HTTP Error 503: Forwarding failure
请您参考如下方法:
它的
forward-socks5 / 127.0.0.1:9050 .
不是
forward-socks5 / 127.0.0.1:9051 .
