我正在用Python编写一个爬虫程序,它将通过Tor运行。我使用了Tor,并使用了来自this YouTube tutorial的代码,介绍如何将Python请求路由到位于127.0.0.1:9050
的torsocks代理。在
我不知道如何在我的脚本中打开/关闭这个选项。有些请求我想通过Tor,有些则不需要。基本上,我无法在我使用的socket
对象中找到正确的“close”或“shutdown”方法,因为我不理解它们。在
下面是现在发生的事情
import socket
import socks
import requests
def connect_to_socks():
socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5, '127.0.0.1', 9050, True)
socket.socket = socks.socksocket
r = requests.get('http://wtfismyip.com/text')
print r.text #prints my ordinary IP address
connect_to_socks()
r = requests.get('http://wtfismyip.com/text')
print r.text #prints my Tor IP address
如何关闭SOCKS代理的套接字路由,使其通过普通的internet连接?在
我希望用requests
代替urllib2
,因为这看起来容易得多,但如果我必须深入urllib2
甚至{
对于Python 3,可以使用以下命令设置默认套接字:
听这个good YouTube tutorial就知道了。在
只要给
socket.setdefaultproxy()
打个电话,我就回来了。在相关问题 更多 >
编程相关推荐