这不是我发现的常见问题,但是我没有看到直接的答案。我认为我拥有大部分解决方案,我只需要将几部分连接在一起即可。
我想到了使用this website中的socksipy
在python中链接支持的想法
比网站上的例子还要小(但我是从网站上拉出来的):
import sockets
import sockschain as socks
chain = ['tor://localhost:9050/','ssl://proxy.example.com:8443/', 'http://user:pass@proxy.example.com/']
socks.setdefaultproxy()
for hop in chain:
socks.adddefaultproxy(*socks.parseproxy(hop))
这部分让我真正感兴趣:
rawsocket = socket.socket
socket.socket = socks.socksocket
我已经拥有的是使用套接字的python制成的基本代理服务器。如果您不知道如何制作一个this website和this website可以为您提供有关如何创建基本的说明。我没有发布自己的课程,因为它是一类大约50行的课程。如果有帮助的话,问一下就可以了。
无论如何,我想要的是通过socksipy
创建的代理链来运行我在python中使用类创建的代理服务器,然后其余的工作就很容易了。例如,使用requests
:
self.proxyList = {'http':'http://(myproxyIP):(myproxyPort)'}
,然后可以使用requests.get(URL, proxies=self.proxyList)
运行一个简单的获取请求
我感觉好像我已经连接了大多数点。我只是想知道是否有可能以我认为可行的方式实施我的想法。
更新
我想澄清一些事情,我不是要使代理服务器对我自己以外的其他客户可见。我只想为自己使用代理链。这是我考虑使用代理链以及来自python模块requests
的get请求的方式。
很抱歉,如果这看起来很复杂。这是我想要的基本分解。
socksipy
制作代理链socksipy
制成的代理链来运行代理服务器2-此步骤基本上增加了一条额外的链,即我创建的代理服务器,并使其完全连接到我创建的代理服务器,以完全具有代理链的匿名性。
-我需要帮助的步骤是第2个。
之所以这样做,是因为您真的无法通过请求来运行代理链。这是我试图通过制作已经配置为代理链的代理服务器来解决此问题的方法。
如果仍然不清楚,请发表评论,我会尽力使其更清晰并回答所有问题。