scrapy数据建模与请求
- 数据建模
- 1.1 为什么建模
- 1.2 如何建模
- 1.3如何使用模板类
- 1.4 开发流程总结
目标:
1.应用在scrapy项目中进行建模
2.应用构造Request对象,并发送请求
3.应用利用meta参数在不同的解析函数中传递数据
数据建模
| 通常在做项目的过程中,在items.py中进行数据建模
1.1 为什么建模
1.定义itm即提前规划好哪些字段需要抓,防止手误,因为定义好之后,在运行过程中,系统会自动检查
2.配合注释一起可以清晰的知道要抓取哪些字段,没有定义的字段不能抓取,在目标字段少的时候可以使用字典代替
3.使用scrapy的一些特定组件需要item做支持,如scrapy的ImagesPipeline管道类,百度搜索了解更多
1.2 如何建模
在items.py文件中定义要提取的字段:
class MyspiderItem(scrapy.Item):
name=scrapy.Field()#讲师的名字
title=scrapy.Field()#讲师的职称
desc=scrapy.Field()#讲师的介绍
1.3如何使用模板类
模板类定义以后需要在爬虫中导入并且实例化,之后的使用方法和使用字典相同
注意:
1.from myspider…items import Myspiderltem这一行代码中注意item的正确导入路径,忽略pycharm标记的错误
2.python中的导入路径要诀:从哪里开始运行,就从哪里升始导入
1.4 开发流程总结
1.创建项目
scrapy startproject项目名
2.明确目标
在items.py文件中进行建模
3.创建爬虫
3.1创建爬虫
scrapy genspider 【爬虫名】 【允许的域】
3.2完成爬虫
修改start_urls
检查修改allowed domains
编写解析方法
4.保存数据
在pipelines.py文件中定义对数据处理的管道
在settings.py文件中注册启用管道