如何将TOR用作代理?

2 投票
1 回答
4887 浏览
提问于 2025-04-15 17:05

我想用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作为另一种选择,但那是另一个问题,而且比上面的内容还要复杂。

希望这对你有帮助!:-)

撰写回答