文档详情

《Python网络爬虫》 课件 第5单元-爬虫优化策略.pptx

发布:2025-02-27约3.92千字共29页下载文档
文本预览下载声明

Python网络爬虫

第五单元爬虫优化策略

教学概述

概述

为了提升网络爬虫的稳定性,我们往往会在基础爬虫程序中做一些优化策略,比如:

设置下载延迟;

优化Cookie存储;

优化User-Agent;

使用IP代理池;

模拟用户行为等。

优化网络爬虫程序不仅仅是要提升网络爬虫的稳定性,另一个优化策略就是提升网络爬虫的效率。在第四部分我们已经就反爬虫策略对应的稳定性策略做了处理,本次内容主要讲解通过Scrapy和Redis结合提高网络爬虫的效率,并处理重复请求的自动过滤。

第五单元爬虫优化策略

情境一:分布式爬取电影数据

PART

01

情境概述

情境一:分布式爬取电影数据

情境概述

学习情境描述

教学情境描述:在已有网络爬虫知识和技术的基础上,通过Redis数据源或目标数据存储,完成自动去重;将Redis和Scrapy结合,将多层级批量数据采集程序切换成分布式爬虫程序,并进行异步网络请求,提高网络爬虫的效率。

关键知识点:Redis库环境管理;Redis数据存储。

关键技能点:Redis存储数据。

情境一:分布式爬取电影数据

情境概述

本节课的学习目标

理解Scrapy网络爬虫框架及原理。

掌握Scrapy项目系统配置及爬虫策略配置。

掌握本地Redis的安装配置。

掌握Python模块库(Redis等)安装管理应用。

能根据实际网页源,分析网络爬虫请求限制。

能使用Scrapy+Redis进行分布式数据采集工作。

能使用XPath规范格式化文档并获取目标数据。

能使用PyMySQL完成MySQL结构化数据存储。

情境一:分布式爬取电影数据

情境概述

本节课的任务书

安装配置Redis本地环境。

安装管理Redis库。

完成Scrapy和Redis项目整合。

完成Scrapy+Redis分布式数据采集。

情境一:分布式爬取电影数据

PART

02

知识准备

情境一:分布式爬取电影数据

知识准备

引导问题

都有哪些方式可以优化网络爬虫程序?

了解什么是分布式爬虫,分布式爬虫为什么能优化网络爬虫程序?

Redis框架体系结构及原理是什么?

Scrapy和Redis如何组合构建网络爬虫程序?

情境一:分布式爬取电影数据

知识准备

知识点介绍

Scrapy

Redis

情境一:分布式爬取电影数据

知识准备

Redis

情境一:分布式爬取电影数据

Redis介绍

Redis是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。它支持多种类型的数据结构,如字符串(strings),散列(hashes),列表(lists),集合(sets),有序集合(sortedsets)与范围查询,bitmaps,hyperloglogs和地理空间(geospatial)索引半径查询。Redis内置了复制(replication),LUA脚本(Luascripting),LRU驱动事件(LRUeviction),事务(transactions)和不同级别的磁盘持久化(persistence),并通过Redis哨兵(Sentinel)和自动分区(Cluster)提供高可用性(highavailability)。

Redis是一个开源的使用ANSIC语言编写、遵守BSD协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的API。

知识准备

Redis安装与配置

情境一:分布式爬取电影数据

下载软件

在Github上查找RedisWindows平台编译版本,当前最新稳定版为5.0.10,地址为:

安装软件

运行下载的Redis安装包:Redis-x64-5.0.10.msi,选定安装地址,默认安装即可。

安装过程如下:

/tporadowski/redis/releases

案例讲解

情境一:分布式爬取电影数据

知识准备

情境一:分布式爬取电影数据

验证安装

验证Redis安装,在CMD中启动Redis服务。效果如图:

知识准备

情境一:分布式爬取电影数据

Redis配置

在安装Redis过程中,有选项选择是否将Redis安装路径添加到系统环境中,若未选择,则将其添加在Path下。效果如图:

知识准备

Redis命令

情境一:分布式爬取电影数据

redis-cli

redis-cli命令指的是Redis安装目录下的redis-cli.exe文件,此命令用于在Redis服务上执行操作,而要在redis服务上执行命令需要一个red

显示全部
相似文档