美文网首页
MAC 下搭建 PySpider

MAC 下搭建 PySpider

作者: 一颗地梨子 | 来源:发表于2019-07-16 16:31 被阅读0次

    最近在学习Python爬虫、想再自己本地MAC下搭建PySpider框架,经历了步步为坑的遭遇。。。

    首先安装一下PySpider

    我用的是Python3、pip3,所以我下载操作都是以Python3、pip3 为主。

    先打开pyspider文档:http://docs.pyspider.org/en/latest/

    安装命令:pip3 install pyspider

    启动:pyspinder all

    第一个坑来了:

    其实这个问题就是pyspider中把async设置为关键字了,而async可是python3.7的关键字啊。所以解决办法就是 打开:/usr/local/lib/python3.7/site-packages/pyspider/run.py,将async改为:asyncs(建议使用编辑器批量修改,具体改为什么、随意)

    改完之后、很多用户可能会直接启动:pyspider all  结果发现还是不行

    不过这次不是关键字冲突了、这个是说: phantomjs 没找到、需要安装phantomjs。了解过pyspider的都知道、pyspider+phantomjs 配合是很好用的。接下来就安装phantomjs 

    1).下载phantomjs(http://phantomjs.org/download.html)官网下载mac版本

    2).下载后直接解压,将解压后的phantomjs-2.1.1-macosx文件夹放到你想放的目录下(随意、开心就好) 

    然后执行:pwd   把路径复制一份、备用

    3).添加全局变量,终端输入vim .bash_profile 添加语句(vim 语法相信大家是有点基础的。这里简单列几个一会用的上的。插入:i,退出:电脑的 esc 按键,:wq! 保存并关闭)

    打开后:i      直接复制过去  export PATH=/你放的目录路径[上面 pwd 的结果]/phantomjs-2.1.1-macosx/bin:$PATH

    5).终端输入source .bash_profile     让刚才的环境变量生效

    6).终端输入 phantomjs --version 检测是否配置成功  

    如果出现版本号、接OK了

    接下来是不是想直接启动一下 pyspider all  结果发现还是不行

    这次出现的又是第一次出现的关键字冲突问题  ---  没办法、就是这么坑

    一样的操作、打开:/usr/local/lib/python3.7/site-packages/pyspider/fetcher/tornado_fetcher.py,将async改为:asyncs(建议使用编辑器批量修改,具体改为什么、随意)

    继续测试、启动:pyspider all 

    (这里简单说一下、每次启动的时候都会出现以下情况)

    这个是端口占用问一下、经常使用linux 的人这个应该不是什么问题

    处理方式:   查看占用端口的PID   lsof -i:25555          杀死这个PID:kill -9 57349

    接下来继续启动、你会发现,还是报错。。  是不是醉了,淡定、淡定、淡定……

    其实这个还是老问题:关键字占用问题、同样的去修改即可:

    打开:/usr/local/lib/python3.7/site-packages/pyspider/webui/app.py     将async改为:asyncs(建议使用编辑器批量修改,具体改为什么、随意)

    修改完、杀死进程、启动

    对、是的、又爆了…… 而且这个问题比较尴尬,这个是pycurl 安装错误问题、网上有好多教程

    下面的操作是无效的

    (   pip uninstall pycurl

    export PYCURL_SSL_LIBRARY=openssl

    pip install pycurl --compile  )

    结果你会发现、不行,怎么办?我测试了直接在github 上下载源码、然后安装,还是不行

    别急、解决方法来了:

    pip3 uninstall pycurl# 卸载库

    export PYCURL_SSL_LIBRARY=openssl

    export LDFLAGS=-L/usr/local/opt/openssl/lib

    export CPPFLAGS=-I/usr/local/opt/openssl/include# openssl相关头文件路径

    pip3 install pycurl --compile --no-cache-dir # 重新编译安装

    执行完之后测试: 

    OK!!!但是、但是、但是……别激动,可能还有问题

    再次启动:

    是的、这是我遇到的最后一个坑了、

    这是WsgiDAV发布了版本 pre-release 3.x导致的,所以只要把版本降下来就好了。

    执行命令:pip3 install wsgidav==2.4.1

    终于完成了、现在可以很嚣张的启动了

    查看端口占用程序、杀死、启动:

    打开浏览器:http:// localhost:5000 /

    完成!!!

    相关文章

      网友评论

          本文标题:MAC 下搭建 PySpider

          本文链接:https://www.haomeiwen.com/subject/ryktlctx.html