重庆企业网站推广公司,制作网页的步骤搜集素材,太原seo外包公司,设计工作室发展前景一、基础知识 1. Spiders 文件夹 用于编写爬虫规则#xff0c;可以在已有的___init__.py文件中编写具体的爬虫规则但是实际开发中可能有多个爬虫规则#xff0c;所以建议一个爬虫规则用一个文件表示#xff0c;这样便于维护和管理 2. 代码 # -*- coding: utf-8 -*-
import s…一、基础知识 1. Spiders 文件夹 用于编写爬虫规则可以在已有的___init__.py文件中编写具体的爬虫规则但是实际开发中可能有多个爬虫规则所以建议一个爬虫规则用一个文件表示这样便于维护和管理 2. 代码 # -*- coding: utf-8 -*-
import scrapy
from baidu.items import BaiduItem
from scrapy.selector import Selector #自带的数据清洗模块
from scrapy.spiders import Spiderclass SpiderSpodersSpider(scrapy.Spider):name Spider_spoders#必须设置而且是唯一的命名用于运行爬虫allowed_domains [baidu.com]start_urls [http://baidu.com/list?cid110,http://baidu.com/list?cid110102]#函数parse处理相应内容函数名不能更改def parse(self, response):selSelector(response)#将相应内容生成selector用于数据的清洗items[]itemBaiduItem()#定义BaiduItem对象titlesel.xpath(//div[classquestion-title]/a/text()).extract()for i in title:items.append(i)items[TitleName]itemsreturn item 代码说明 1 属性name不能为空是程序运行入口如果有多个爬虫规则那么每个规则的属性name不能重复 2 Allowed_domains是设置允许访问的域名如果为空就说明对域名不做访问限制 3 Start_urls用于设置爬取对象的URL程序运行时会对start_urls遍历处理 4 类方法parse()用于处理网站的相应内容如果爬虫引擎是Spider方法名就不能更改 5 爬虫规则以类为实现单位并继承父类SpiderSpider是Scrapy的爬虫引擎 3. spiders介绍 (1) Spider是定义如何抓取某个网站的类包括如何执行抓取访问URL以及如何从页面中提取结构化数据抓取数据。Spider是开发者自定义的类用于为特定的网抓取和解析页面。 2Spider执行周期 抓取第一个URL的初始请求然后指定一个回调函数从请求的响应来调用回调函数请求链接通过调用start_requests()方法parse方法作为回调函数处理请求链接返回的请求结果在回调函数中主要解析响应内容并将解析后的数据存储在item对象中在回调函数中通常选用选择器beautifulsoup、lxml解析页面内容并将解析的数据存储在item对象中。4 Spider的种类 1Scrpay.spiders.Spider:最简单的spider类其他的类是继承该类不提供任何的特殊功能只提供一个默认的start_requests()方法请求从start_urls开始Spider发送请求并使用函数parse处理每个响应内容。 2Scrapy.spiders.CrawlSpider:抓取常规网站最常用的spider提供了一个方便机制可通过定义一组规则来跟踪URL适合全站数据爬取和通用的爬虫开发。除了拥有scrapy.spider.Spider全部属性之外还有特定属性rules和parse_start_url方法转载于:https://www.cnblogs.com/luoyw/p/10587241.html