【Scrapy】Spiders爬虫
来源:互联网 发布:阿里在线编程测验 编辑:程序博客网 时间:2024/05/16 18:22
Spider类定义了如何爬取某个网站。包括爬取的动作以及如何从网页的内容中提取结构化数据。
Spider就是定义爬取的动作及分析某个网页的地方。
爬取的循环:
①以初始的URL初始化Request,并设置回调函数。当该request下载完毕并返回时,将生成response,并作为参数传给该回调函数。
spider中初始的request是通过调用start_requests()来获取的。start_requests()读取start_urls中的URL,并以parse为回调函数生成Request.
②在回调函数内分析返回的(网页)内容。返回Item对象或者Request或者一个包括二者的可迭代容器。返回的Request对象之后会经过Scrapy处理,下载相应的内容,并调用设置的callback函数(函数可以相同)。
③在回调函数内,可以使用选择器(Selectors)(也可以使用BeautifulSoup,lxml或者想用的任何解析器)来分析网页内容,并根据分析的数据生成item。
④最后由spider返回的item将被存到数据库(由某些Item Pipeline处理)或使用Feed exports存入到文件中。
Spider参数
Spider可以通过接收参数来修改其功能。spider参数一般用来定义初始URL或者指定限制爬取网站的部分。也可以使用其来配置spider的任何功能。
在运行crawl时添加-a可以传递Spider参数
scrapy crawl myspider -a category=electronics
Spider
class scrapy.spider.Spider
Spider是最简单的spider。每个其他的spider必须继承自该类(包括Scrapy自带的其他spider以及自己编写的spider)。Spider并没有提供什么特殊的功能。其仅仅请求给定的start_urls/start-requests,并根据返回的结果(resulting responses)调用spider的parse方法。
name
定义spider名字的字符串。spider的名字定义了Scrapy如何定位(并初始化)spider。所以其必须是唯一的。
- 【Scrapy】Spiders爬虫
- Scrapy-spiders(爬虫)
- Scrapy源码分析-Spiders爬虫中文文档(一)
- Scrapy爬虫框架教程(三)-- 调试(Debugging)Spiders
- 九.scrapy项目下spiders内多个爬虫同时运行
- scrapy学习--Spiders
- Scrapy spiders介绍
- 跟我学系列,走进Scrapy爬虫(六)Spiders爬虫
- scrapy学习--内置Spiders简介
- Scrapy学习笔记IV-Spiders
- Scrapy:一次性运行多个Spiders
- Scrapy:一次性运行多个Spiders
- scrapy爬虫
- Scrapy 爬虫
- scrapy爬虫
- 爬虫-scrapy
- Locally run all of the spiders in Scrapy
- python.scrapy 之crawlall命令执行所有的spiders
- java学习之JDK5.0特性
- CSS 概述
- Ubuntu下配置samba服务器
- 第四章t1
- Windows下Qt5环境搭建
- 【Scrapy】Spiders爬虫
- 深入Java集合学习系列:HashMap的实现原理
- backpack ii
- 在SQL Server中快速删除重复记录
- hdu 1576 A/B
- 存储过程调存储过程实例
- 第四章t2
- 进程、线程小结(1)
- 石子合并问题