【问题标题】:requests.exceptions.ConnectionError: Failed to establish a new connection: 0x05: Connection refusedrequests.exceptions.ConnectionError:无法建立新连接:0x05:连接被拒绝
【发布时间】:2019-08-22 20:30:36
【问题描述】:

我知道已经有很多关于这个话题的话题,但没有一个能吸引我。

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 和睡眠,但它对我不起作用。有人知道解决办法吗?

【问题讨论】:

    标签: python python-requests mechanize-python


    【解决方案1】:

    这对我有用:

    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)
    

    【讨论】:

      猜你喜欢
      • 2021-11-13
      • 2017-05-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多