scrapy安装

最近想搞一下python的爬虫,就想起来学习一下scrapy。之前写过一些爬虫代码,都是利用beautifulsoup或者正则表达式对特定的网站html进行解析,爬取结束也就废弃了。

1 scrapy下载

我下载的版本是scrapy-0.22的源码包,下载地址是http://scrapy.org/download/

2 scrapy安装

1 依赖

    python2.7
    Twisted>=10.0.0
    lxml
    pyOpenSSL
    cssselect>=0.9
    w3lib>=1.2
    queuelib
    six>=1.5.2

可以参考源码包中的requirements.txt,Twisted>=10.0.0的意思是需要Twisted软件包,并且其版本号必须大于等于10.0.0。

可怜我的centos上除了python2.7有以外,其他的软件包都需要自己下载安装,下面就做一一介绍。

2 安装python2.7

python一般linux下都会有安装,就不做介绍了。

3 安装 Twisted

依赖

    Zope.Interface
    PyOpenSSL

下载

Twisted:http://twistedmatrix.com/trac/wiki/Downloads

Zope.Interface:https://pypi.python.org/pypi/zope.interface

PyOpenSSL:https://pypi.python.org/pypi/pyOpenSSL

安装

Zope.Interface: 
                python setup.py install
PyOpenSSL: 
                python setup.py build
                python setup.py install
Twisted: 
                python setup.py install

验证

4 安装lxml

依赖

    libxml2
    libxslt

下载

lxml:http://lxml.de/index.html#download

libxml2 libxslt都可以在http://xmlsoft.org/sources/下载源码 安装 libxml2:假设安装在~/tools/下 ./configure --prefix=/home/username/tools/libxml2 --without-python make make install 安装完在安装目录下会有bin,include,lib,share文件夹

    libxslt:安装和libxml2相同
            ./configure --prefix=/home/username/tools/libxslt --without-crypto --without-python --with-libxml-prefix=/home/username/tools/libxml2
            make
            make install
            安装完在安装目录下会有bin,include,lib,share文件夹

    lxml:
            python ./setup.py build --with-xslt-config=/home/username/tools/libxslt/bin/xslt-config
            python ./setup.py install

验证

错误是lxml需要libxml2.so.2,这个库在编译时是安装在我们制定的目录/home/username/tools/libxml2/lib下,没有放在系统的lib文件夹下,所以找不到。

    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/username/tools/libxml2/lib

参考http://www.coder4.com/archives/3660

5 安装 six w3lib cssselect queuelib

下载

six :https://pypi.python.org/pypi/six

w3lib:https://pypi.python.org/pypi/w3lib

cssselect:https://pypi.python.org/pypi/cssselect

queuelib: https://pypi.python.org/pypi/queuelib

安装

依次进入源码包,python setup.py install 即可

6 安装scrapy

    python setup.py install

本文主要是从源码安装scrapy,并下载所有依赖包源码依次安装,有些麻烦,有些用easy_install安装的方法比较方便,这里就不介绍了。