前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Mac 基于Python3.7 安装PySpider

Mac 基于Python3.7 安装PySpider

作者头像
hedeqiang
发布2019-12-18 11:24:15
1.2K0
发布2019-12-18 11:24:15
举报
文章被收录于专栏:LaravelCodeLaravelCode

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

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

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

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

代码语言:javascript
复制
sudo mv phantomjs /usr/bin

配置环境变量

代码语言:javascript
复制
export PATH="$PATH:/usr/local/phantomjs"
source ~/.profile

接着安装 PySpider

代码语言:javascript
复制
pip3 install pyspider

发现报错......

file
file

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

代码语言:javascript
复制
export PYCURL_SSL_LIBRARY=openssl

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

启动 PySpider

代码语言:javascript
复制
pyspider all

发现又报错了

file
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
file

再次修改所有的 asyncasync_

file
file

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

file
file

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

代码语言:javascript
复制
lsof -i:3110 
file
file

接着kill 掉就好了 kill 664

file
file

最后打开浏览器 看下效果

file
file

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

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档