请教一下,为什么只有我的电脑跑爬虫会出现 SSLCertVerificationError ?

2019-08-19 16:51:18 +08:00
 tankb52

具体报错信息如下

requests.exceptions.SSLError: HTTPSConnectionPool(host='www.amazon.com', port=443): Max retries exceeded with url: /product-reviews/B07GBP3GH9/ref=cm_cr_arp_d_viewopt_srt?sortBy=recent&pageNumber=1 (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1076)'

爬一些亚马逊上评论会出现这个错误(是自家产品,不涉及侵权),在 r = requests.get(self.url + str(page_n), headers=header, timeout=30)最后面添加, verify = False 就不会报错。

只在我的电脑上出现这个问题,其他同事的电脑上运行正常。

同时发现我电脑上pip install moudlename时也会报这个错误。搜索以后已经将 pip 升级到 19.2.2,或者说是所有的模块都已更新到最新。 最后解决方案是在 pip.ini 中加入以下内容

[global]
trusted-host = pypi.python.org
               pypi.org
               files.pythonhosted.org

但是爬虫依然有问题,我电脑换用同事的网络也不行,走手机热点电信网络也不行。

我怀疑是我电脑上某个证书出问题了,怎么排查呢? 最开始在自己电脑上鼓捣爬虫时动过很多设置,这次脚本是同事发过来的,在别人电脑上跑都通过了。

5573 次点击
所在节点    Python
32 条回复
ThirdFlame
2019-08-19 22:29:56 +08:00
难道设置了全局代理到 fiddle ?
tankb52
2019-08-19 23:37:31 +08:00
@Keyes
@ThirdFlame

公司的网络应该是统一走 fiddle 的,但是只有我的电脑出问题就很奇怪了。

我明天再去看看
ThirdFlame
2019-08-20 08:35:49 +08:00
@tankb52 那就是你没有信任 fiddle 的证书问题而已。
lusi1990
2019-08-20 09:41:26 +08:00
原来是走了 fiddler, 你需要的是 fiddler 的证书
resp = requests.get('https://ipinfo.io/json', verify='fiddler.cer',proxies=proxy)
tankb52
2019-08-20 10:45:04 +08:00
@ThirdFlame #23
@lusi1990 #24
请问如何做呢?
本地没有 fiddler.cer 。
我执行后错误如下
OSError: Could not find a suitable TLS CA certificate bundle, invalid path: fiddler.cer
lusi1990
2019-08-20 11:22:58 +08:00
@tankb52 这个是你们公司提供给你了, 名字可能不叫这个, fiddler 证书的默认名字应该是 "FiddlerRoot.cer", verify 是证书 "FiddlerRoot.cer" 的路径
tankb52
2019-08-20 11:34:34 +08:00
@lusi1990 #26
好的,多谢了。
我去想办法,不行再找公司 IT.
foxyier
2019-08-21 09:54:50 +08:00
把抓包工具关了再试一下呢。。
tankb52
2019-08-21 11:14:44 +08:00
@foxyier
公司层级的,不是我电脑上的
foxyier
2019-08-21 13:25:32 +08:00
@tankb52 你都说了你同事电脑都没问题。那就肯定是你电脑的问题啊。。为啥问题是公司层级呢? 公司层级的话不是都应该有问题么
tankb52
2019-08-21 15:35:35 +08:00
@foxyier
我的意思是说抓包工具是公司层级上部署的,我关不掉。

至于我电脑上确实是出问题,只是我找不到原因。
dapan24678
2019-10-29 09:18:53 +08:00
@warcraft1236 老哥 666,确实 本机开代理会影响 ssl 验证

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/593225

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX