爬虫框架的安装pyspider和Scrapy
pyspider是国人binux编写的强大的网络爬虫框架,它带有强大的WebUI、脚本编辑器、任务监控器、项目管理器以及结果处理器,同时支持多种数据库后端、多种消息队列,另外还支持JavaScript渲染页面的爬取,使用起来非常方便,
准备工作pyspider是支持JavaScript渲染的,而这个过程是依赖于PhantomJS的,所以还需要安装PhantomJS
pip安装
pip3 install pyspider
验证安装
安装完成之后,可以直接在命令行下启动pyspider:
pyspider all
这时pyspider的Web服务就会在本地5000端口运行。直接在浏览器中打开http//ocalhost:5000/,即可进入pyspider的WebUI管理页面,
报错
pip3 install pycurl
=====================================================================
Scrapy的安装
Scrapy是一个十分强大的爬虫框架,依赖的库比较多,至少需要依赖的库有Twisted 14.0,lxml 3.4和pyOpenSSL 0.14,在不同的平台环境下,它所依赖的库也各不相同,所以在安装之前,最好确保把一些基本库安装好。
在Ubuntu,Debian和Deepin平台下,首先确保一些依赖库已经安装,运行如下命令:
sudo apt-get install build-essential python3-dev libssl-dev libffi-dev libxml2 libxml2-dev libxslt1-dev zlib1g-dev
然后利用pip安装Scrapy即可:
pip3 install Scrapy
验证安装
安装之后,在命令行下输入
scrapy
Ubuntu安装
sudo apt install python3-scrapy
常见错误
在安装过程中,常见的错误汇总如下,pkg_resources.VersionConflict:(six1.5.2(/usr/lib/python3/dist-packages),Requirement.parse(‘six=1.6.0’))
这是six包版本过低出现的错误。six包是一个提供兼容Python 2和Python 3的库,这时升级six
sudo pip3 install -U six
c/_cffi_backend.c:15:17:fatal error:ffi.h:No such file or directory这是在Linux下常出现的错误,缺少libfi库造成的。什么是libf?FFI的全名是Foreign Function Interface,通常指的是允许以一种语言编写的代码调用另一种语言的代码。而libfi库只提供了最底层的、与架构相关的、完整的FFI。此时安装相应的库即可。在Ubuntu和Debian下,直接执行如下命令即可:
sudo apt-get install build-essential libssl-dev libffi-dev python3-dev
在CentOS和Red Hat下,直接执行如下命令即可:
sudo yum install gcc libffi-devel python-devel openssl-devel
Command"python setup.py egg_info"failed with error code 1 in/tmp/pip-build/cryptography/
这是缺少加密的相关组件,此时利用pip安装即可:
pip3 install cryptography
ImportError:No module named’packaging’
这是因为缺少packaging包出现的错误,这个包提供了Python包的核心功能,此时利用pip安装即可:
pip3 install packaging
ImportError:No module named’_cffi backend’
这个错误表示缺少cffi包,直接使用pip安装即可:
pip3 install cffi
ImportError:No module named’pyparsing’
这个错误表示缺少pyparsing包,直接使用pip安装即可:
pip3 install pyparsing appdirs