python - requests.exceptions.ConnectionError:无法建立新连接:0x05:连接被拒绝
问题描述
我知道已经有很多关于这个话题的话题,但没有一个能吸引我。
import mechanicalsoup
browser = mechanicalsoup.StatefulBrowser()
browser.set_user_agent(
'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.47 Safari/537.36')
proxies = dict(http='socks5://104.238.97.230:31800', https='socks5://104.238.97.230:31800')
res = browser.open('http://icanhazip.com/', proxies=proxies, verify=False)
# res = browser.open('http://icanhazip.com/')
print(res.content)
我的代理正在工作,没有问题。如果我通过代理重定向我的 python 流量,我会得到我想看到的结果,但如果我只是尝试这段代码,我会得到一个错误。
我也尝试了 try - except 和睡眠,但它对我没有用。有人知道解决方案吗?
解决方案
这对我有用:
import mechanicalsoup
import socks
import socket
def create_connection(self, address, timeout=None, source_address=None):
sock = socks.socksocket()
sock.connect(address)
return sock
socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5, '104.238.97.230', 31800)
# patch the socket module
socket.socket = socks.socksocket
socket.create_connection = create_connection
browser = mechanicalsoup.StatefulBrowser()
browser.set_user_agent(
'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.47 Safari/537.36')
proxies = dict(http='socks5://104.238.97.230:31800', https='socks5://104.238.97.230:31800')
res = browser.open('http://icanhazip.com/')
print(res.content)
推荐阅读
- python - 从同一数据框中创建多个 seaborn 重叠的热图
- docusignapi - DocuSign ClickApi 端点
- flutter - 将列表中的所有数字相加或添加变化的变量列表的替代方式颤动
- python - 无法点击使用 Selenium 的网站
- reactjs - 我想通过 react spring 制作一个切换 div 但我收到了这个错误(TypeError: Object(...) is not a function)
- javascript - 如何使用 uploadType=resumable 将文件上传到谷歌驱动器 API
- node.js - Google App Engine,在 express/react 应用中部署后缓存的 index.html
- c# - 如何在使用 IoC 时使用接口扩展 UserControl
- flutter - 在颤振中将数据从函数传递到有状态小部件时遇到问题
- keras - 如何用 Keras Dot 函数训练余弦相似度?