Python出现ValueError: check_hostname requires server_hostname问题解决

Python在使用requests包的时候发现会报一个错误

ValueError: check_hostname requires server_hostname

百思不得其解、因为怀疑是自己代理的问题、于是又给代码加上了一串代理地址

proxy = {
"http": "http://127.0.0.1:7890",

"https": "https://127.0.0.1:7890"

}

因为我本地使用的是“Clash”、所以我的端口设置为7890、奇怪的问题再次出现。我使用cmd去访问谷歌都正常走代理、唯独代码无法走代理、后来才知道为什么。

这个其实跟选用的python版本或者本地代理的关系不大,主要原因是因为每次使用 pip install 命令下载插件的时候,下载的都是最新的版本,比如下载requests插件,它会自动的将依赖的urllib3这个插件也安装,然后依赖的插件版本太高,就导致了这个报错的问题。

所以说,一般遇到这种莫名其妙的问题的时候,可以先去看一下是不是插件的问题导致的,解决措施就是 将urllib3插件的版本降低就可以,当然,直接在安装requests插件的时候,选择用低版本也可以解决这个问题。比如用下面的命令指定版本进行安装:

pip install requests==2.20
或者使用下面的命令降低版本:
pip install urllib3==1.25.8

这样问题就完美解决了 这里主要是做一个记录、让更多小伙伴遇到此类问题可以快速解决定位问题!

本文来自投稿,不代表本站立场,如若转载,请注明出处:https://www.zfjsec.com/752.html
-- 展开阅读全文 --
MongoDB意外关机后无法启动解决办法
« 上一篇 08-09
动态过滤包含文本的节点(前端搜索)————一个JS函数
下一篇 » 08-10

发表评论