Mac 基于Python3.7 安装PySpider

作者: hedeqiang

发布时间: 2019-02-21 22:08:29

PySpider 是国人 binux 编写的强大的网络爬虫框架,它带有强大的 WebUI、脚本编辑器、任务监控器、项目管理器以及结果处理器,同时它支持多种数据库后端、多种消息队列,另外它还支持 JavaScript 渲染页面的爬取

PySpider 是支持 JavaScript 渲染的,而这个过程是依赖于 PhantomJS 的,所以还需要安装 PhantomJS,所以在安装之前先安装 PhantomJS

前往这里 下载 ,我这里下载的版本为 phantomjs-2.1.1-macosx.zip

解压当前文件 ,进入 bin 目录,会发现一个 phantomjs ,然后移动该文件到 /usr/bin 目录,

sudo mv phantomjs /usr/bin

配置环境变量

export PATH="$PATH:/usr/local/phantomjs"
source ~/.profile

接着安装 PySpider

pip3 install pyspider

发现报错......

file

然后我找到的解决方案是:

export PYCURL_SSL_LIBRARY=openssl

接着再次运行 pip3 install pyspider 就没问题了

启动 PySpider

pyspider all

发现又报错了

file

网上搜索一番,最后结论就是 Python3.7 以后 async 是系统保留关键字,不允许使用,解决方式:要么降低 Python 版本,或者根据提示将关键字 async 进行修改

https://github.com/binux/pyspider/issues/817

解决步骤: 按照提示修改 /usr/local/lib/python3.7/site-packages/pyspider/run.py 文件所有 asyncasync_ 接着再次启动

file

再次修改所有的 asyncasync_

file

再次修改完 就可以启动了,但是出现 Error: Could not create web server listening on port 25555

file

然后搜索一番说是端口被占用了,kill 掉就OK了, 参考链接 以下是 Mac 上查看端口使用的方法

lsof -i:3110 

file

接着kill 掉就好了 kill 664

file

最后打开浏览器 看下效果

file

以上就是 Mac 安装 PySpider 的曲折过程,基于 Python3.7

关于极客返利

极客返利 是由我个人开发的一款网课返利、返现平台。包含 极客时间返现、拉勾教育返现、掘金小册返现、GitChat返现。目前仅包含这几个平台。后续如果有需要可以考虑其他平台。 简而言之就是:你买课,我返现。让你花更少的钱,就可以买到课程。

https://geek.laravelcode.cn

https://geek.idaka.ink

版权许可

本作品采用 知识共享署名 4.0 国际许可协议 进行许可。

转载无需与我联系,但须注明出处,注明文章来源 Mac 基于Python3.7 安装PySpider