当前位置: 首页 > 知识库问答 >
问题:

Python请求连接到被阻止的服务器

越鸿才
2023-03-14

我想连接到一个URL,这是阻止,使用python请求。

我使用了许多不同的代理html" target="_blank">服务器没有一个为我工作。https://free-proxy-list.net/

import requests

x = '46.21.153.16:3128'
http_proxy  = "http://"+x
https_proxy = "https://"+x

proxyDict = {
  "http": http_proxy,
  "https": https_proxy
}


a = requests.get('https://example.com', proxies=proxyDict)
print(a.status_code)

回溯(最近一次调用last):文件“t.py”,第14行,在a=requests.get('https://my-url“,proxies=proxyDict)文件“/home/user/Documents/backend1/venv-livedx/lib/python3.5/site-packages/requests/api.py”,第75行,在get-return-request('get',url,params=params,**kwargs)文件中“/home/user/Documents/livedx/backend1/venv-livedx/lib/python3.5/site-packages/requests/api.py”,第60行,在请求返回会话中。请求(method=method,url=url,**kwargs)文件“/home/user/Documents/backend1/venv-livedx/lib/python3.5/site-packages/requests/sessions.py”,第533行,在请求响应=self.send(prep,**,**,**kwargs)文件中”/home/user/Documents/backend1/venv-livedx/lib/python3.5/site-packages/requests/sessions.py”,第646行,在send r=adapter.send(request,**kwargs)文件/home/user/Documents/backend1/venv-livedx/lib/python3.5/site-packages/requests/adapters.py中,第510行,在send-raise-ProxyError(e,request=request)中requests.exceptions.ProxyError:HTTPSConnectionPool(host='my-url',port=443):url:/management超过了最大重试次数(由ProxyError('无法连接到代理',OSError('隧道连接失败:403禁止',)引起)

共有2个答案

赵晨
2023-03-14

尝试仅使用http代理进行连接。因此,请尝试将代码更改为:

http_proxy  = "http://46.21.153.16:3128"
proxyDict = {
  "http": http_proxy,
  "https": http_proxy
}

免费代理可能不支持ssl/tls连接。

此外,由于您使用的是免费代理,请确保它没有过期。

此外,如果您试图解析的url具有自签名证书,python请求也可能失败,因此您必须使用将verify参数设置为False来发出请求。

a=requests.get('https://example.com',proxies=proxyDket,验证=False)

章学义
2023-03-14

流行的网络防火墙阻止流行的用户代理,将其视为机器人。

复制您的浏览器代理,并根据请求尝试更改用户代理。我打赌请求使用它自己的默认用户代理或python urllib之一。

示例:

a = requests.get('https://example.com', headers={'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.152 Safari/537.36'})
 类似资料:
  • 问题内容: 因此,我有了这个Go http处理程序,该处理程序将一些POST内容存储到数据存储中,并检索其他一些信息作为响应。在后端,我使用: 在我的firefox OS应用程序中,我使用: 传入的部分都一直如此。但是,我的回复被阻止了。给我以下信息: 我尝试了许多其他操作,但是无法从服务器获得响应。但是,当我将Go POST方法更改为GET并通过浏览器访问该页面时,我得到的数据太糟糕了。我无法真

  • 问题内容: 我在跟踪为什么无法连接到特定主机时遇到问题。 通过curl或浏览器,以下命令可以正常工作: 但是,如果我使用请求: 我得到: 在网络上,我仅看到客户端问好,服务器立即断开连接,因此似乎没有任何ssl或密码不兼容。(我希望这些都是SSL层错误)在这种情况下还有什么其他问题? 我在python 3.6.1上,请求2.14.2(带有安全性额外功能)。 问题答案: 该服务器以多种方式损坏。 一

  • 问题内容: 无法致电Spring REST服务 我的春季服务 我的AJAX代码 我收到以下错误:( 跨域请求被阻止:同源策略禁止读取位于http:// localhost:8080 / SpringMVC / rest / MAS / authenticate 的远程资源。可以通过将资源移到同一域或启用CORS来解决此问题。 我也尝试过。它将我的body对象附加到URL中,URL变为不同的URL,

  • 我也在应用程序根目录中使用。htaccess文件。(waleedahmad.kd.io/node)。

  • 线程“main”io.netty.channel.abstractchannel$AnnotatedConnectException:连接被拒绝:无进一步信息:/127.0.0.1:8888在sun.nio.channel.checkConnect(本机方法)在sun.nio.channel.socketchannel.finishConnect(未知源)在io.netty.channel.soc

  • 当我试图从返回JSON的Symfony API获取Angular数据时,我目前面临一个错误: “阻止跨源请求:同一源策略不允许读取位于的远程资源。”http://localhost:8000/customers. (原因:缺少CORS标头“访问控制允许原点”。) 以下是完整结果的截图: 我知道这个问题已经被问了很多次,但我找不到一个有效的答案。 当我不尝试在api控制器中检索$session时,它