您的位置:首页 > 其它

Scrapy框架——安装Scrapy

2018-01-07 19:44 232 查看
Scrapy框架—— 安装Scrapy

需求配置

安装sqlite依赖库

编译python3.6

编译Twisted

安装Scrapy

测试Scrapy是否成功安装

Scrapy框架—— 安装Scrapy

  
Scrapy
可以说是爬虫界鼎鼎有名的框架。 它是一个重型的爬虫框架,结合数据抓取,导出,以及部分的数据清洗的功能。

本文针在python3.6的环境下来安装scrapy


需求配置

sqlite依赖库(centos下为sqlite-devel包)

  
scrapy
框架的正常运行,你的
python3.6
版本需要编译支持
sqlite
,

python3.6

Twisted

  
scrapy
的异步功能实现,需要
Twisted
的支持。 目前
scrapy
的最新版本需要
Twisted>13.0
版本, 而
pip3.6
, 所以我们需要从源码编译。

安装sqlite依赖库

   如果你的
python3.6
已经编译支持了
sqlite
,可以跳过这个步骤。

下载sqlite库

yum install sqlite-devel


编译python3.6

下载python3.6源码

cd /tmp
curl -O Python-3.6.4.tgz  https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tgz[/code] 
编译python3.6

tar xvvf Python-3.6.4
cd  Python-3.6.4
./configure
make && make install


编译Twisted

下载Twisted源码

cd /tmp
git clone https://github.com/twisted/twisted.git[/code] 
编译Twisted

cd twisted/
python3.6 setup.py install


安装Scrapy

pip3 install scrapy


测试Scrapy是否正常工作

   这里我们简单的抓一下京东首页的分类列表来测试一下
scrapy
是否正常工作。

scrapy genspider example www.jd.com //该命令会在当前目录下生成一个example.py文件


//example.py
import scrapy

class ExampleSpider(scrapy.Spider):
name = 'example'
allowed_domains = ['www.jd.com']
start_urls = ['http://www.jd.com/']

def parse(self, response):
category = response.xpath('//div[contains(@class,"navitems")]/ul/li/a/text()').extract();
for cate in category:
yield {'cate': cate}
pass


scrapy runspider example.py -L INFO -o category.json
//该命令会运行example.py爬虫脚本,然后将抓取结果保存到category.json中


//category.json
[
{"cate": "\u79d2\u6740"},
{"cate": "\u4f18\u60e0\u5238"},
{"cate": "PLUS\u4f1a\u5458"},
{"cate": "\u95ea\u8d2d"},
{"cate": "\u62cd\u5356"},
{"cate": "\u4eac\u4e1c\u670d\u9970"},
{"cate": "\u4eac\u4e1c\u8d85\u5e02"},
{"cate": "\u751f\u9c9c"},
{"cate": "\u5168\u7403\u8d2d"},
{"cate": "\u4eac\u4e1c\u91d1\u878d"}
]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  爬虫 框架 scrapy