scrapy目录
spiders: 源文件夹,所有的爬虫类都写在这个目录下
items.py: 结构化数据的 实体类 的模块
middlewares.py: 所有 中间层类 的模块
pipelines.py: 结构化后的数据, 持久化 操作的模块
settings.py: 项目的 配置文件
scrapy项目的实现步骤:
1、在 cmd 窗口中 执行: scrapy startproject 项目名
2、把第一步步生成的项目 加载到 pycharm
3、修改settings中的
ROBOTSTXT_OBEY = False
DEFAULT_REQUEST_HEADERS = 5个常用的headers
4、在 spiders 源文件夹 中 编写一个 spider 模块,
在模块中 建立一个 爬虫类,
编写对应的 启动方式
编写对应的回调函数!
直到 得到具体的业务数据
5、在 items.py 中 编写 item 实体类, 并且将 第4步 得到的数据 结构化
通过 yield item 将 item 传递给 pipeline
6、需要在 settings 启用 pipeline
7、在 第6步 启用的 pipeline 中,编写对应的 持久化代码
可以print输出,也可以写到文件,也可以写到数据库
8、持久化成功,项目运行
spider 类的 2种启动方式:
1、 start_urls 属性
如果第一个请求直接就是 get 请求的,url就是固定的,
没有额外的处理的,那么就使用 该方式
2、 start_requests 函数
第一种情况处理不了的,就 用 这个方法
‘’’
构造 get 请求,使用 yield scrapy.Request()
构造 post 请求, 使用 yield scrapy.FormRequest() , 提交的 data 使用 formdata关键字参数
‘’’