如何将TOR用作代理?
我想用TOR作为一个通用的代理,但遇到了问题。
现在我在用Python,但我觉得用其他语言也差不多。我能用Python连接其他代理,所以我知道“应该”怎么做。
我找到了一些TOR的入口节点列表。
h = httplib.HTTPConnection("one entry node", 80)
h.connect()
h.request("GET", "www.google.com")
resp = h.getresponse()
page = resp.read()
可惜这不管用,我被重定向到了404错误页面。
我不太确定自己哪里出错了。可能这些入口节点不能直接连接。我在找怎么正确使用它的资料,但找不到关于如何用TOR编程的文档。
编辑:
放弃那个TOR代理列表,我不知道为什么我需要了解它。
其实“入口节点”就是你自己,在你安装了(Windows)Vidalia客户端和Privoxy(这两个是捆绑在一起的)之后。
httplib.HTTPConnection("one entry node", 80)
就变成了
httplib.HTTPConnection("127.0.0.1", 8118)
这样一来,所有的流量就都通过TOR了。
1 个回答
4
首先,确保你使用的是正确的节点位置和端口。大多数代理使用的端口不是80。其次,在你的请求字符串中指定正确的协议和URL。
在正常情况下,如果你的代码看起来像下面这个样子,它应该可以正常工作:
h = httplib.HTTPConnection("138.45.68.134", 8080)
h.connect()
h.request("GET", "http://www.google.com")
resp = h.getresponse()
page = resp.read()
h.close();
你也可以使用socket作为另一种选择,但那是另一个问题,而且比上面的内容还要复杂。
希望这对你有帮助!:-)