文档详情

《网络爬虫项目实践》课件_项目四:分布式爬虫(教案).docx

发布:2025-02-13约1.87千字共5页下载文档
文本预览下载声明

项目四分布式爬虫

教案

课程名称:网络爬虫项目实践

课程类别:必修

适用专业:大数据技术类相关专业

总学时:64学时(其中理论28学时,实验36学时)

总学分:4.0学分

本章学时:3学时

材料清单

《网络爬虫项目实践》教材。

配套PPT。

引导性提问。

探究性问题。

拓展性问题。

教学目标与基本要求

教学目标

分布式爬虫实现了多台电脑使用一个共同的爬虫程序,它可以同时将爬虫任务部署到多台电脑上运行,这样可以提高爬虫速度,实现分布式爬虫。

想要保证多台机器共用一个queue队列和set集合,在scrapy框架中,是需要结合scrapy_redis完成的。分布式爬虫可以让所有机器上的爬虫程序,从同一个queue队列中获取request请求,并且每个机器取出request,请求的对象是不一样的,直到所有的request被请求完毕。

本项目分为三个任务,任务1介绍分布式环境搭建,任务2和任务3通过两个项目介绍三种scrapy_redis运行方式。

、基本要求

掌握VMWare虚拟机的安装方法

掌握在CentOS的安装和配置方法

掌握在CentOS上安装Python的方法

掌握在CentOS中安装部署scrapy方法

掌握在CentOS中安装部署scrapy-redis方法

掌握克隆虚拟机的方法

掌握在Windows中安装Redis数据库的方法

掌握scrapy-redis的编码方式

问题

引导性提问

引导性提问需要教师根据教材内容和学生实际水平,提出问题,启发引导学生去解决问题,提问,从而达到理解、掌握知识,发展各种能力和提高思想觉悟的目的。

什么是分布式爬虫的优点和缺点?

如何使用Redis作为任务队列来实现分布式爬虫?

如何使用Scrapy-redis框架来快速搭建一个分布式爬虫?

探究性问题

探究性问题需要教师深入钻研教材的基础上精心设计,提问的角度或者在引导性提问的基础上,从重点、难点问题切入,进行插入式提问。或者是对引导式提问中尚未涉及但在课文中又是重要的问题加以设问。

如何使用RabbitMQ或Kafka作为消息中间件来实现分布式爬虫?

如何使用数据库集群或分片来存储分布式爬虫的数据?

如何使用Scrapy的信号机制来监控和控制分布式爬虫的状态?

拓展性问题

拓展性问题需要教师深刻理解教材的意义,学生的学习动态后,根据学生学习层次,提出切实可行的关乎实际的可操作问题。亦可以提供拓展资料供学生研习探讨,完成拓展性问题。

如何使用Docker或Kubernetes来部署和管理分布式爬虫的容器?

如何使用Selenium或Splash来实现分布式爬虫的动态页面渲染?

如何使用Scrapy的扩展机制来增加或修改分布式爬虫的功能?

主要知识点、重点与难点

主要知识点

VMWare虚拟机的安装

CentOS的安装和配置

CentOS安装Python

CentOS安装部署scrapy

CentOS安装部署scrapy-redis

克隆虚拟机

Windows中安装Redis数据库

scrapy-redis的运行方式

重点

CentOS安装Python

CentOS安装部署scrapy

CentOS安装部署scrapy-redis

Windows中安装Redis数据库

scrapy-redis的运行方式

难点

CentOS安装Python

scrapy-redis的运行方式。

教学过程设计

理论教学过程

VMWare虚拟机的安装方法

在CentOS的安装和配置方法

在CentOS上安装Python的方法

在CentOS中安装部署scrapy方法

在CentOS中安装部署scrapy-redis方法

克隆虚拟机的方法

在Windows中安装Redis数据库的方法

分布式爬取三种方式

实验教学过程

安装VMWare虚拟机

Linux安装

虚拟机网络设置

安装Python

安装分布式框架

克隆虚拟机

安装Redis数据库

创建Scrapy项目

爬取网页数据

爬取网页数据

数据存储

分布式爬取

教材与参考资料

教材

李程文,唐建生,冯欣悦.网络爬虫项目实践[M].西安:西安电子科技大学出版社.2023.

参考资料

[1] 赵国生,王健.python网络爬虫技术与实战[M].北京:机械工业出版社.2021.

[2] 黑马程序员.Python网络爬虫基础教程[M].北京:人民邮电出版社.2022.

[3] 罗刚,王振东.Python网络爬虫从入门到精通[M].北京:清华大学出版社.2023.

显示全部
相似文档