python中spider的用法_Scrapy Spider类的用法

Spider 类定义了如何爬取某个(或某些)网站,包括爬取的动作(例如:是否跟进链接)以及如何从网页的内容中提取结构化数据(爬取item)。换句话说,Spider 就是定义爬取的动作及分析某个网页(或者是多个网页)的地方。

定义爬虫是我们最重要的任务,而 scrapy.Spider 是最基本的类,所有我们编写的爬虫必须继承自该类。

下面先来看一个非常简单的例子,该例子仅爬取两级页面来获得需要的数据。爬虫的种子页面是 http://stackoverflow.com/questions?sort=votes,其上显示被点赞最多的话题,每页默认显示 15 项。但是话题的详细信息并不在这个页面上,而是在其链接所指向的二级页面上。

所以为了得到我们的数据,需要进行两步操作:

打开种子页面,读取出链接信息。

打开被链接页面,读取需要的内容。

由于这些数据是动态的,所以读者看到的数据也许和下面显示内容的略有不同。

#encoding: utf-8

import scrapy # 引入scrapy模块

# 定义自己的爬虫, 必须继承自scrapy.Spider

class StackOverflowSpider(scrapy.Spider):

name = 'stackoverflow' # 爬虫的名字

# 种子地址

start_urls = ['http://stackoverflow.com/questions?sort=votes']

# 回调函数1,用来解析列表页面

def parse(self, response):

for href in resp

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值