1、初识scrapy
来源:互联网 发布:ubuntu磁盘空间查看 编辑:程序博客网 时间:2024/06/01 08:37
Scrapy是一个从网上爬取数据的开源的、友好的框架。
An open source and collaborative framework for extracting the data from website.
scrapy具有以下优点:
1. 快速强大
2. 容易扩展
3. 适应于多平台
一个简单的爬虫
下面这个爬虫爬取了stackoverflow问题页中的内容。
stackoverflow_spider.py
import scrapyclass StackoverflowSpider(scrapy.Spider): name = 'stackoverflow' start_urls=['http://stackoverflow.com/questions?sort=votes'] def parse(self, response): for href in response.css('.question-summary h3 a::attr(href)'): full_url = response.urljoin(href.extract()) yield scrapy.Request(full_url, callback=self.parse_question) def parse_question(self, response): yield { 'title': response.css('h1 a::text').extract()[0], 'votes': response.css('.question .vote-count-post::text').extract()[0], 'body': response.css('.question .post-text').extract()[0], 'tags': response.css('.question .post-tag::text').extract(), 'link': response.url }
运行命令scrapy runspider stackoverflow_spider.py -o result.csv
,将爬虫爬取结果保存到result.csv中。
该爬虫的运行过程:
1. 使用start_urls作为初始url生成Request,并默认把parse作为它的回调函数。
2. 在parse中采用css选择器获得目标URL,并注册parse_question作为目标URL的回调函数。
scrapy的高级特性
- 内置css/xpath/re数据抽取器
- 交互式控制台用于调试数据抽取方法(scrapy shell)
- 内置对爬取结果的输出支持,可以将结果保存为json/csv/xml等
- 自动处理编码
- 支持自定义扩展
- 丰富的内置扩展,可用于处理:
- cookies and session
- http features like compression, authentication,caching
- user-agent spoofing
- robots.txt
- crawl depth restriction
0 0
- 1、初识scrapy
- Scrapy网络爬虫----初识
- Python---初识Scrapy框架
- 初识Scrapy-实战(一)
- 爬虫学习笔记-Scrapy初识
- Scrapy_part1_初识SCRAPY和安装
- scrapy-1-初窥scrapy
- Python3网络爬虫:初识Scrapy爬虫框架
- scrapy-1
- 《Learning Scrapy》1 Scrapy介绍
- 初识scrapy框架,美空图片爬虫实战
- Python3网络爬虫(十二):初识Scrapy之再续火影情缘
- Scrapy学习笔记(1)初探Scrapy
- Python 关于 Scrapy 1
- scrapy研究探索1
- Scrapy学习-1
- Scrapy教程1--7
- Scrapy学习日记1
- 对于跨域总是not call back 的问题
- 动态表格的增删改查
- Android 消息机制原理 (源代码分析)
- Oracle 11gR2中针对备份恢复功能的增强
- LCD设备驱动(二)
- 1、初识scrapy
- 数据事务四种隔离机制和七种传播行为
- mysql的事务的隔离级别
- MyBatis用嵌套ResultMap实现一对多映射
- linux 的重定向、管道、xargs 命令
- DI【理解】【应用】【重点】
- 8.learningAction(行为库)3
- hadoop资料收集
- Vue2中的键盘事件