Python中Scrapy框架的使用步骤有这些:创建Scrapy项目——定义提取的Item——编写爬取网站的Spider并提取Item——编写Item Pipeline来存储提取的ltem。
1、创建一个Scrapy项目。在开始爬取之前,要创建一个新的Scrapy项目,也就是存储代码的目录。
2、定义提取的Item。Item是存放抓取的数据的容器,其功能类似于Python字典,并提供了一个额外的保护机制,以避免因拼写错误造成的未定义字段的错误。
3、编写爬取网站的Spider并提取Item。Spider是一个用户编写的类,用于抓取单个网站的数据。它包含了一个用于下载的初始URL,以及跟踪网页中的链接、分析页面中的内容、提取生成ltem的方法。
要创建一个Spider,你必须继承scrapy.Spider类,并定义以下三个属性。
①name:用于区别Spider。该名称必须是只有一个,为不同的Spider设置不同的名称。
②start_urls:包含了Spider在启动时抓取的Urls的列表。被抓取的第一个页面是起始页,随后的URL是从初始URL中抓取的数据中提取的。
③parse()。spider的一个方法。当被调用时,每个初始URL被下载后产生的Response对象将会作为特有的参数传递给这个函数。
这个方法负责解析返回的数据,提取数据(生成ltem)以及生成需要进一步处理的URL的Request对象。
4、编写Item Pipeline来存储提取的ltem(即数据)。在Spider中收集ltem后,它将被传递给Item Pipeline,一些组件将按照一定的顺序对ltem进行处理。
Item Pipeline组件是实现了简单方法的Python类。它们接收Item并通过它执行一些操作,同时也决定此ltem是否继续Pipeline,或是被丢弃而不再进行处理。
Item Pipeline的一些典型应用包括清理HTML数据、验证爬取的数据、查重(并丢弃)、将爬取结果保存到数据库中。