Scrapy 是采用Python 开发的一个快速可扩展的抓取WEB 站点内容的爬虫框架。
Scrapy,Python开发的一个快速,高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据。Scrapy用途广泛,可以用于数据挖掘、监测和自动化测试。
Scrapy吸引人的地方在于它是一个框架,任何人都可以根据需求方便的修改。它也提供了多种类型爬虫的基类,如BaseSpider、sitemap爬虫等,最新版本又提供了web2.0爬虫的支持
scrapy提供一个工具来生成项目,生成的项目中预置了一些文件,用户需要在这些文件中添加自己的代码;但是依赖的第三方库是真多;
git clone https://github.com/scrapy/scrapy.git
或者;
wget https://github.com/scrapy/scrapy/archive/0.14.zip
yum 安装依赖库;
yum install gcc gcc-c++ mysql mysql-server mysql-devel libffi libxml2 libxml2-devel libxslt libxslt-devel libxslt1-devel ruby
Python-2.7.6.tgz
Python2.7 以上版本;
(示例使用2.7 和3.6 以上print格式不同; 如3.0以上python,下载第三方依赖库时看下版本支不支持python2.7;
以下有些第三方库需要做出setup.py更改才能install )
wget http://www.python.org/ftp/python/2.7.6/Python-2.7.6.tgz
./configure --prefix=/usr/local/python
make &&make install
mv /usr/bin/python /usr/bin/python_old
ln -s /usr/local/python/bin/python2.7 /usr/bin/python
python -V
3、pip-9.0.1.tar.gz
pip python包管理工具;
tar -xf pip-9.0.1.tar.gz
cd pip
python setup.py build
python setup.py install
4、setuptools-11.3.tar.gz
setuptools是PythonEnterpriseApplicationKit(PEAK)的一个副项目,它是一组Python的distutilsde工具的增强工具(适用于Python2.3.5以上的版本,64位平台则适用于Python2.4以上的版本),可以让程序员更方便的创建和发布 Python 包,特别是那些对其它包具有依赖性的状况;setuptools 模块;来构建,安装,升级和卸载Python包;( setuptools版本11.3就行;版本太高依赖更多 )
python下的setuptools带有一个easy_install的工具,在安装python的每三方模块、工具时很有用,也很方便。安装setuptools前先安装pip;
tar -xf setuptools-11.3.tar.gz
cd setuptools
python setup.py build
python setup.py install
5、zope.interface-4.1.1.tar.gz
Python 支持多继承,但是不支持接口,zope.inteface 是其三方的接口实现库,在twisted中有使用;
tar -xf zope.interface-4.1.1.tar.gz
cd zope.interface/
python setup.py install
6、Twisted-12.1.0.tar.bz2
Twisted是用Python实现的基于事件驱动的网络引擎框架;
wget https://twistedmatrix.com/Releases/Twisted/12.1/Twisted-12.1.0.tar.bz2
tar -xf Twisted-12.1.0.tar.bz2
cd Twisted
python setup.py build
python setup.py install
7、six-1.10.0.tar.gz
顾名思义 包装python2 和python3 的差异;
tar -xf six-1.10.0.tar.gz
mv six-1.10.0/ six
cd six/
python setup.py build
python setup.py install
8、w3lib-1.17.0.tar.gz
w3lib模块,这个包用来移除一些多余的html标签;
tar -xf w3lib-1.17.0.tar.gz
python setup.py build
python setup.py install
9、MySQL-python-1.2.5.zip
MySQLdb是Python流行的MySQL数据库服务器接口;(因为抓取过程中需要mysql数据库来支撑)
unizp MySQL-python-1.2.5.zip
cd MySQL-python/
python setup.py build
python setup.py install
二、
第三方依赖库;
会示安装需要的插件;然后在 python setup.py install
模块可以使用pip install ;也也可以直接下载包install
( 缺少的依赖模块 按提示版本的需求安装就行;版本太高有可能插件更多哦 )
1、lxml-3.4.4.tar.gz
lxml的XML工具包是一个Python的C库libxml2和libxslt结合;(还可以yum安装)
tar -xf lxml-3.4.4.tar.gz
cd scrapy/
python setup.py build
python setup.py install
2、pyOpenSSL-17.0.0.tar.gz
OpenSSL库
tar -xf pyOpenSSL-17.0.0.tar.gz
cd pyOpenSSL/
python setup.py build
python setup.py install
3、cffi-1.10.0.tar.gz
Python的外部函数接口;基于C声明;
tar -xf cffi-1.10.0.tar.gz
cd cffi/
python setup.py build
python setup.py install
4、cryptography-1.8.1.tar.gz
cryptography 密码学是一个包,它为Python开发人员提供加密配方和原语
tar -xf cryptography-1.8.1.tar.gz
cd cryptography/
python setup.py build
python setup.py install
5、pyparsing-1.5.7.tar.gz
pyparsing模块来创建和执行简单的语法的一种替代方法,与传统的lex/yacc的方法,或使用正则表达式。的pyparsing模块提供了一个类,客户端代码使用Python代码直接构造语法库。
tar -xf pyparsing-1.5.7.tar.gz
cd pyparsing
python setup.py build
python setup.py install
6、idna-2.5.tar.gz
IDNA 模块,自带Python标准库;国际化域名(IDNA)中的应用
tar -xf idna-2.5.tar.gz
cd idna
python setup.py build
python setup.py install
7、pycparser-2.17.tar.gz
pycparser 模块 语法分析器 是使用PLY模块分析c语言语法的模块;可以很容易地集成到需要解析C源代码的应用;
tar -xf pycparser-2.17.tar.gz
cd pycparser/
python setup.py build
python setup.py install
8、ipaddress-1.0.18.tar.gz
ipaddress模块和类的功能使它简单处理IP地址相关的各种任务,包括检查是否有两台主机在同一子网,在一个特定的子网的所有主机迭代,检查是否一个字符串代表一个有效的IP地址或网络的定义;
tar -xf ipaddress-1.0.18.tar.gz
cd ipaddress
python setup.py build
python setup.py install
9、enum34-1.1.6.tar.gz
ENUM类型 在Python 模块自定义类型模块
tar -xf enum34-1.1.6.tar.gz
cd /usr/local/enum34/
python setup.py install
10、packaging-16.8.tar.gz
Python包的核心打包模块
tar -xf packaging-16.8.tar.gz
cd packaging/
python setup.py build
python setup.py install
11、asn1crypto-0.11.1.tar.gz
asn1crypto 模块;一个快速,用于解析和序列化ASN纯Python库
tar -xf asn1crypto-0.11.1.tar.gz
cd asn1crypto-0.11.1
python setup.py build
python setup.py install
三、
完善第三方库最后切换到scrapy 目录下进行安装;
cd scrapy/
python setup.py build
python setup.py install
# whereis scrapy
scrapy: /usr/local/scrapy
# cp -rp /usr/local/scrapy/bin/scrapy /usr/bin/
# scrapy version
Scrapy 0.14.4