PAGE6
PAGE6
PAGE5
PAGE5
《Python网络爬虫技术案例教程》教案
课时分配表
章序
课程内容
课时
备注
1
网络爬虫入门
4
2
爬虫基础
6
3
网页解析基础
10
4
爬取动态加载数据
8
5
反爬虫策略
4
6
模拟登录和处理验证码
4
7
爬取App和PC客户端数据
4
8
爬虫框架Scrapy
6
9
分布式爬虫
6
10
项目实战——京东商品信息爬取及数据分析
4
合计
56
课题
第1章网络爬虫入门
课时
4课时(180min)
教学目标
知识目标:
(1)理解网络爬虫的原理、分类和应用
(2)掌握网络爬虫的工作流程
(3)了解网络爬虫协议
能力目标:
能在Windows系统中搭建Python开发环境
素质目标:
培养学生对网络爬虫技术的兴趣,认识到其在数据挖掘、信息检索等方面的价值
教学重难点
教学重点:网络爬虫的原理、分类和应用,网络爬虫的工作流程和协议
教学难点:能在Windows系统中搭建Python开发环境
教学方法
案例分析法、问答法、讨论法、讲授法
教学用具
电脑、投影仪、多媒体课件、教材
教学过程
主要教学内容及步骤
考勤
【教师】使用APP进行签到
【学生】班干部报请假人员及原因
新课预热
【教师】自我介绍,与学生简单互动,介绍课程内容、考核标准等
【学生】聆听、互动
【教师】讲述Python网络爬虫技术的应用案例,使学生了解学习该课程的目的
【学生】聆听、记录、理解
问题导入
【教师】提出以下问题:
(1)什么是网络爬虫?
(2)为什么要学习网络爬虫?
【学生】聆听、思考、举手回答
【教师】总结学生的发言
传授新知
【教师】通过学生的回答引入要讲的知识,介绍网络爬虫的原理、分类、应用、工作流程、协议,以及搭建Python开发环境的方法等知识
1.1网络爬虫概述
1.1.1网络爬虫原理
网络爬虫又称为“网络蜘蛛”,是一个用来实现自动采集网络数据的程序。……(详见教材)
?【教师】利用多媒体展示“网络爬虫基本原理”图片(详见教材),并进行讲解
总的来说,网络爬虫的基本原理可用图描述。
(1)预先设定一个或若干个初始网页的URL,将初始URL加入待爬取URL列表中。
(2)从待爬取列表中逐个读取URL,并将URL加入已爬取URL列表中,然后下载网页。
(3)解析已下载的网页,提取所需的数据和新的URL,并存储提取的数据。
(4)将新的URL与已爬取的URL列表进行比对,检查该网页是否已爬取,如果网页没有被爬取,则将新的URL放入待爬取URL列表的末尾,等待读取。
(5)如此往复,直到待爬取URL列表为空或者满足设定的终止条件,最终达到遍历网页的目的。
1.1.2网络爬虫分类
网络爬虫按照系统结构和工作原理的不同,大致可以分为四类:通用网络爬虫、聚焦网络爬虫、增量式网络爬虫和深层网络爬虫。
(1)通用网络爬虫又称全网爬虫,是根据网络爬虫的基本原理实现的,它所爬取的目标会从初始设定的URL扩充到全网。……(详见教材)
(2)聚焦网络爬虫爬取的目标是与预先定义好的主题相关的网页。与通用网络爬虫相比,聚焦网络爬虫只选择爬取与主题相关的网页,极大地节省了硬件和网络资源,它主要应用于对特定领域信息有需求的场景。……(详见教材)
(3)增量式网络爬虫爬取的目标是有更新的已下载网页和新产生的网页。爬虫程序监测网站数据更新的情况,然后在需要的时候只爬取发生更新或新产生的网页。……(详见教材)
(4)深层网络爬虫爬取的目标是不能通过静态链接获取的,隐藏在搜索表单后的,只有用户提交一些关键词才能获得的网页,如用户注册后才可显示内容的网页。
1.1.3网络爬虫应用
每个独立的搜索引擎都有自己的爬虫程序,爬虫程序每天连续地爬取相关网站,提取信息保存到索引数据库中,如Google爬虫Googlebot、百度爬虫Baiduspider、必应爬虫Bingbot?等。此外,有些搜索引擎对应不同的业务还有不同的爬虫,如百度图片爬虫Baiduspider-image、百度新闻爬虫Baiduspider-news等。搜索引擎在用户输入搜索信息后并不是直接搜索整个互联网,而是对预先建立好的索引数据库进行检索。
……(详见教材)
1.2网络爬虫工作流程
?【教师】利用多媒体展示“网络爬虫工作流程”图片(详见教材),并进行讲解
网络爬虫是一个自动化的程序,它的工作流程非常简单。爬虫程序首先发送请求,获取网页响应的内容,然后解析网页内容,最后将提取的数据存储到文件或数据库中。总结起来,其工作流程可以分为爬取网页、解析网页和存储数据三个步骤,如图所示。
1.2.1爬取网页
爬虫程序首先要做的工作是爬取网页,即获取网页的源代码。源代码里包含了网页的有用信息,所以只要把源代