PySpider HTTP 599: SSL certificate problem错误的解决方法(转)
前言
最近发现许多小伙伴在用 PySpider 爬取 https 开头的网站的时候遇到了 HTTP 599: SSL certificate problem: self signed certificate in certificate chain 的错误。
经过一番排查,解决方案总结如下
错误原因
这个错误会发生在请求 https 开头的网址,SSL 验证错误,证书有误。
报错如下

解决方案
最简单的解决方法是:
在 crawl 方法中加入忽略证书验证的参数,validate_cert=False,即
|
1
|
self.crawl(url,callback=method_name,validate_cert=False)
|
以上方法基本可以解决问题。
如果出现了
|
1
|
[E16032914:00:56base_handler:194]crawl()got unexpected keyword argument:['validate_cert']
|
的错误,即无法匹配到 validate_cert 参
数,那么则是 PySpider 本身的问题。
可以更新到最新版本,即更新到 master 分支。
因为包还没有发行,所以我们就手动来更新。
https://cuiqingcai.com/2703.html
转自静觅
前言
最近发现许多小伙伴在用 PySpider 爬取 https 开头的网站的时候遇到了 HTTP 599: SSL certificate problem: self signed certificate in certificate chain 的错误。
经过一番排查,解决方案总结如下
错误原因
这个错误会发生在请求 https 开头的网址,SSL 验证错误,证书有误。
报错如下

解决方案
最简单的解决方法是:
在 crawl 方法中加入忽略证书验证的参数,validate_cert=False,即
|
1
|
self.crawl(url,callback=method_name,validate_cert=False)
|
以上方法基本可以解决问题。
如果出现了
|
1
|
[E16032914:00:56base_handler:194]crawl()got unexpected keyword argument:['validate_cert']
|
的错误,即无法匹配到 validate_cert 参数,那么则是 PySpider 本身的问题。
目前的最新发行版是 0.3.6(2016/3/29),不过 GitHub 最新版本目前是 0.4.0
可以更新到最新版本,即更新到 master 分支。
因为包还没有发行,所以我们就手动来更新。
可以点击右侧下载 zip 包。

Mac OS X
以 Mac OS X为例,找到 pyspider 库所在的路径。我的是在
|
1
|
/Library/Python/2.7/site-packages/pyspider
|
打开之后发现如下的结构。

把刚才的包下载下来之后,解压缩,打开文件夹,发现目录结构是这样的。

然后进入 pyspider 文件夹,观察一下,发现和我们之前安装的 pyspider 目录结构是一样的,没错,就是它了!

嗯,把所有的文件都更新到 site-packages/pyspider 目录中。
可以手动拖动替换,可以使用命令
|
1
2
|
cd pyspider
sudo python setup.py install
|
更新之后,然后重新启动 pyspider 。
|
1
|
pyspider all
|
再加入 validate_cert=False 参数,发现就不会出现刚才的问题了。
Linux
方法同上,pyspider 路径应该在
|
1
|
/usr/lib/python/site-packages/pyspider-0.3.6.egg/pyspider
|
替换一下下载下来的文件。
同样也可以使用命令
|
1
2
|
cd pyspider
sudo python setup.py install
|
Windows
方法同上,pyspider 路径应该在
|
1
|
python(python安装目录)/Lib/site-packages/pyspider
|
同样替换下载下来的文件即可。
命令同上
|
1
2
|
cd pyspider
sudo python setup.py install
|
结语
通过以上配置,我们解决了 PySpider 的 599 错误以及 validate_cert 参数不匹配的问题。
希望对大家有帮助!
转载请注明:静觅 » PySpider HTTP 599: SSL certificate problem错误的解决方法
PySpider HTTP 599: SSL certificate problem错误的解决方法(转)的更多相关文章
- PySpider HTTP 599: SSL certificate problem错误的解决方法
在用 PySpider 爬取 https 开头的网站的时候遇到了 HTTP 599: SSL certificate problem: self signed certificate in certi ...
- PySpider 框架爬虫错误 HTTP 599: SSL certificate problem: unable to get local issuer certificate解决方案
首先pyspider all启动pyspider的所有服务,然后访问http://localhost:5000创建一个爬虫任务:taobaomm,点开任务链接编辑http://localhost:50 ...
- HTTP 599: SSL certificate problem: unable to get local issuer certificate错误
自己在用 PySpider 框架爬虫运行代码后时出现 HTTP 599: SSL certificate problem: unable to get local issuer certificate ...
- Git发生SSL certificate problem: certificate ha错误的解决方法
这两天,不知道为什么,用Git提交代码到服务器时,总出现SSL certificate problem: unable to get local issuer certificate while ac ...
- Exception: HTTP 599: SSL certificate problem: unable to get local issuer certificate 解决办法
使用Pyspider中报此错误. 错误原因: 这个错误会发生在请求 https 开头的网址,SSL 验证错误,证书有误. 解决方法: 使用self.crawl(url, callback=self.i ...
- Git发生SSL certificate problem: certificate ha错误
这两天,不知道为什么,用Git提交代码到服务器时,总出现SSL certificate problem: unable to get local issuer certificate while ac ...
- curl: (60) SSL certificate problem: unable to get local issuer certificate 错误
今天同事做微信管理的项目,请求接口返回如下错误SSL certificate problem: unable to get local issuer certificate. 此问题的出现是由于没有配 ...
- git中的SSL certificate problem: unable to get local issuer certificate错误的解决办法
我们在使用git初始化一个项目时,尤其是通过git submodule update --init --remote初始化子模块时,可能会遇到下面这个错误: fatal: unable to acce ...
- Git错误:unable to access 'https://git.voicegu.com/qa/qa.git/': SSL certificate problem: unable to get local issuer certificate
fatal: unable to access 'https://git.voicegu.com/qa/qa.git/': SSL certificate problem: unable to get ...
随机推荐
- C语言 百炼成钢27
/* 题目63:编写C++程序完成以下功能: (1)声明一个纯虚函数类Shape(形状),其中包含来计算面积.计算周长的方法: (2)从Shape派生两个类矩形和圆形: (3)从矩形派生正方形: (4 ...
- python笔记2-数据类型:字符串常用操作
这次主要介绍字符串常用操作方法及例子 1.python字符串 在python中声明一个字符串,通常有三种方法:在它的两边加上单引号.双引号或者三引号,如下: name = 'hello' name1 ...
- 刚新建好的动态网站项目,创建jsp页面就报错
拿到刚刚可以运行的Eclipse,就马上想敲码了,但一创建项目之后再创建jsp页面就报错= =! 报错的内容大概为缺乏对应的jar包. 我们常用Tomcat为中间体,而他本身是带有开发jsp网站的对应 ...
- XMLHttpRequest的withCredentials属性
最近对接第三方网站出现一下错误:Access to XMLHttpRequest at 'https://third.site.com/request_url' from origin 'https: ...
- linux 知识点拾遗
文件名称 在 Linux 底下,每个档案或文件夹的文件名称最长能够到达 255 的字符,加上完整路径时,最长可达 4096 个字符; 因为 Linux 在文字接口下的一些指令操作关系,一般来说,您在设 ...
- js indexof用法indexOf()定义和用法
indexOf()定义和用法 indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置. 语法 stringObject.indexOf(searchvalue,fromindex) ...
- 第10步:DBCA创建实例
注意,创建磁盘组时需要以oracle用户身份执行,在那之前可能需要以root身份执行xhost+,即命令: 代码1 [root@sgdb1~]# xhost+ [root@sgdb1~]# su - ...
- 图片和byte[]数组互转
一.图片转成byte[]数组. import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io ...
- 编写高质量代码–改善python程序的建议(二)
原文发表在我的博客主页,转载请注明出处! 建议七:利用assert语句来发现问题断言(assert)在很多语言中都存在,它主要为调试程序服务,能够快速方便地检查程序的异常或者发现不恰当的输入等,可防止 ...
- CF678D(Iterated Linear Function)
题目链接:传送门 题目大意:略 题目思路:用题目所给函数推出表达式,然后用等比求和公式得到关系式套用即可(需用乘法逆元),也可直接构造矩阵,用矩阵快速幂求解. 感受:做题时一定要仔细,需要仔细注意什么 ...