【Scrapy + Elasticsearch 搜索引擎实战】(二)Scrapy爬虫框架

本文介绍如何使用Scrapy爬取quotes.toscrape.com网站的名言摘抄,通过分析页面元素创建项目、编写Spider,解析数据项,并实现翻页功能。接着在items.py中定义Items结构,最后运行爬虫并将数据存入Elasticsearch。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Scrapy官方文档

本文以 quotes.toscrape.com 为例进行简单的数据爬取,Quotes to Scrape 是 Scrapy 官方文档中使用的示例网站,数据项较为简单,适合入门

网站分析

http://quotes.toscrape.com/ 是一个名句摘抄的网站,每段摘抄都标注了出处、标签
在这里插入图片描述
Command + Option + I,查看页面元素,接下来我们会根据元素进行数据
在这里插入图片描述

创建项目

在终端输入

scrapy startproject quotes

quotes 是项目名称

目录结构:
在这里插入图片描述

Spiders

Spiders 就是用户编写的,用来解析页面、获取数据的类
切换到项目目录

cd quotes

创建 Spider

scrapy genspider QuotesSpider quotes.toscrape.com

会在 spiders 目录下创建一个 QuotesSpider.py 文件
在这里插入图片描述

name 是 Spider 名
allowed_domains 是 可爬取的域名列表,如果启用了 OffsiteMiddleware (默认启用),就不跟踪不在此列表中的URL
start_urls 从这个列表中的URL开始爬取,可以有多个URL
parse(self, response) 是默认回调

下面开始编写我们自己的Spider

爬取名言摘抄

编写回调,根据页面元素解析数据项

    def parse(self, response):
        # 获取所有包含名句的元素
        all_texts = response.css('.text')

        # 获取所有包含作者(及url)的元素
        all_authors = response.css('.author')

        all_authors_urls 
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值