爬虫框架scrapy ,在初步接触的过程中记录下学习过程。今天是初步的学习笔记。当然在前期的学习过程中,随着不断的深入,初步的理解可能会错误,但会在后续的各章中持续深入。
本文参考了 http://scrapy-chs.readthedocs.io/zh_CN/0.24/intro/tutorial.html
scrapy框架是用作爬虫的一个框架。以下为整个业务逻辑
以上为爬虫的业务逻辑。 先理解Scrapy框架的业务逻辑,然后再学习起来就会更容易上手。
然后以下就是完整的代码实现了。
1. 安装完Scrapy框架后,创建项目 scrapy startproject xxxx 就会在当前目录创建项目xxxx
2. Item 是保存爬取到的数据的容器;其使用方法和python字典类似, 并且提供了额外保护机制来避免拼写错误导致的未定义字段错误。编辑 items.py文件
import scrapyclass DmozItem(scrapy.Item):title = scrapy.Field()link = scrapy.Field()desc = scrapy.Field()3.编写爬虫。在spiders文件夹里创建 dmoz_spider.py
import scrapy from tutorial.items import DmozItemclass DmozSpider(scrapy.Spider):name = "dmoz" allowed_domains = ["dmoz.org"]start_urls = ["http://www.dmoz.org/Computers/Programming/Languages/Python/Books/", "http://www.dmoz.org/Computers/Programming/Languages/Python/Resources/" ]def parse(self, response):for sel in response.xpath('//ul/li'):item = DmozItem()item['title'] = sel.xpath('a/text()').extract()item['link'] = sel.xpath('a/@href').extract()item['desc'] = sel.xpath('text()').extract()yield item以上,一个简单的爬虫就编写完成
4. 在cmd 中,进入第一步所创建的项目根目录,输入 scrapy crawl dmoz,运行爬虫。则会创建一个json 文件,则下载抓取的数据就在这个json里面。
5. 以记事本格式打开以上抓取的json文件
6. 以上所有程序完成后。简单的scrapy爬虫就编写完成了