本文为作者原创,未经允许,请勿转载。
对于初学者来说,刚接触到Scrapy的时候对于她的安装一定很苦难,我也是初入门python,所以我就总结一下对Scrapy的安装及使用,对于像我一样的小白一定会有很大的帮助。let go!
一.Scrapy的安装
1.首先Scrapy现在还不支持python3,所以我们需要现在下载安装python2,这里我选择的是python2.7
下载地址:https://www.python.org/downloads/
具体注意细节,请参照:https://jingyan.baidu.com/article/25648fc19f61829191fd00d4.html
安装完成之后,在dos中输入python --version,如果能够输出安装python版本号,则说明安装成功。
2.安装好python之后,接下来就是安装pywin32
下载地址是:https://sourceforge.net/projects/pywin32/files/pywin32/Build%20220/ 下载适合本电脑系统的版本
3.安装pip
在DOS命令框中输入命令:python -m pip install --upgrade pip --force-reinstall
安装完成之后,在dos中输入pip --version,如果能够输出pip版本号,则说明安装成功
4.安装Scrapy
执行命令:pip install Scrapy
至此,window下的Scrap已经安装完成
二.Scrapy应用的简单案例
1.我们需要创建一个Scrapy项目,在DOS中指定路径下,执行scrapy startproject 项目名(例如: scrapy startproject tutorial,我们就创建了一个名为tutorial的Scrapy项目 ),我们就会在此路径看到我们的项目,项目结构如下:
此项目主要是从curlie.org中抓取标题,链接,内容。
2.我们将项目导入到Pycharm(我想大家都是用此开发工具,在这里就不介绍此开发工具如何使用),我们需要修改item.py文件。以我建的curlie项目为例。
classs CurlieItem(scrapy.Item):
title = scrapy.Field()
link = scrapy.Field()
desc = scrapy.Field()
3.在tutorial/spiders目录下创建一个文件curlie_spider.py文件,内容为:
import scrapy
from tutorial.items import CurlieItem
class CurlieSpider(scrapy.Spider):
name = 'curlie'
alllowed_domains = ['curlie.org']
start_urls =[
'http://curlie.org/Computers/Programming/Languages/Python/Books/',
'http://curlie.org/Computers/Programming/Languages/Python/Resources/'
]
def parse(self, response):
sel = scrapy.selector.Selector(response)
sites = sel.xpath('//div[@class="title-and-desc"]')
items = []
for site in sites:
item = CurlieItem()
item['title'] = site.xpath('a/div[@class="site-title"]/text()').extract()
item['link'] = site.xpath('a/@href').extract()
item['desc'] = site.xpath('div[@class="site-descr "]/text()').extract()
items.append(item)
return items
4.到此为止简单的爬虫已经写完了,接下来我们需要开始爬取。
通过命令进入tutorial项目的根目录:cd tutorial
然后执行下列命令启动spider: scrapy crawl curlie
5.存储内容
这里将结果导出位最常用的JSON格式:scrapy crawl curlie -o items.json -t json
-o后面是导出的文件名,-t指定导出类型
到这里,使用scrapy 爬取一个网页的简单项目已经完成,里面如有下次,请多多指教。