版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
授课教案20—20学年第学期_______学院________专业课程名称数据采集与预处理技术任课教师授课形式理论教学□课内实践□理论+实践☑习题复习□考核评价□其他活动□课时安排2学时(90分钟)序号11授课日期月日月日月日月日授课班级2026级相关专业教学班授课地点实训机房(多媒体)教学内容:项目四任务二网页数据抓取课程思政设计:1.网络法治意识——网络不是法外之地,采集之前先确认目标站点的爬虫协议与访问频率要求。课堂讲清技术能力不等于采集许可,先看规则再动手是职业底线。2.边界意识与隐私保护——手机号、身份证号这一类个人敏感信息严禁抓取。课堂讲清公开可见不等于可以使用,采集范围要严格限定在任务所需的字段上。3.尊重他人权益——目标网站的服务器资源属于他人。课堂讲清控制请求频率不是怕被封,而是不给对方添麻烦,高并发高频访问会造成真实的运行压力。4.职业操守——采集到的公开数据不得用于商业牟利与违规传播。课堂讲清这一条是数据采集从业者应恪守的基本职业准则,失守一次就足以毁掉职业信誉。教学目标:知识目标:能说出HTTP协议基于请求与响应模型工作的基本原理;能说出GET与POST两种请求方法各自的用途与参数携带方式;能说出六个常见状态码各自的含义;能说出User-Agent、Referer、Cookie、Accept四个请求头字段的作用;能说出五种常见反爬虫机制及其对应的应对策略;能说出采集动态加载数据的两种主流方案的优劣;能说出网页数据抓取必须遵守的四条法律与道德规范。能力目标:能用requests库发送GET请求并读出状态码与响应内容;能通过参数字典传递查询参数、通过请求头字典设置客户端标识;能为采集程序加上随机延迟与异常处理;能完成一个多页列表页的分页抓取并把结果保存为CSV文件。素质目标:养成抓取之前先确认目标站点声明的习惯;养成控制请求频率、不给对方服务器添麻烦的习惯;养成采集范围只取任务所需字段、不碰个人敏感信息的习惯。教学重难点及解决方法:教学重点:GET与POST的区别及参数携带方式;状态码的判读与请求头的设置;五种反爬虫机制与对应的应对策略;分页抓取的循环写法。教学难点:从状态码判断采集失败的原因并区分是自身请求问题还是触发了反爬;分页抓取中循环、解析、延迟与异常处理四件事的组织。学生看到请求失败往往只会重试,不会先看状态码;写分页循环时也常把解析与保存混在一起。解决方法:针对难点:把六个状态码列成一张判读表,逐个说明它指向什么问题,并现场把请求头去掉后重新请求一次,学生看到状态码变化,原因由结果给出;分页抓取先画出一次循环里要做的四件事的顺序图,学生照顺序写,解析与保存分处两步而不是挤在一处。针对重点问题:采用边讲边练,每讲完一组请求设置即在机房同步敲一遍,教师巡看每行输出;六种状态码与五种反爬机制各做成一张对照表投屏,学生照表判读;讲分页时先让学生说出翻页时地址栏里哪个部分在变,再讲循环怎么写;课后按随堂检测结果推送分层强化练习。教学环境及平台:实训机房(多媒体),人手一机,配备投影与广播教学系统;课程在线教学平台。软件与工具:Python3运行环境、requests、BeautifulSoup;Chrome浏览器(用于查看网络请求);文本编辑器。数据与素材:教材示例电影榜单页面(每页二十五条,共十页,分页由地址中的起始位置参数控制)。课堂练习严格限定在教材示例范围,控制请求频率,不采集任何个人信息。教学资源:①教材《数据采集与预处理技术》第95–100页正文与示例代码;②本课程课件(含状态码判读表、请求头字段对照表、五种反爬机制与应对策略对照表、分页循环顺序图);③课程在线教学平台(预习测验、随堂练习、课后答疑)与课程AI智能体。学习效果评价方式:过程性评价40%+终结性评价60%的综合评价方式,本次课成绩计入平时成绩,对应其中三项:①课堂实操(主要部分):完成分页抓取程序的编写与运行并导出CSV,按请求设置正确性、异常处理完整性、结果文件可用性三项评分;②随堂测验:下课前5题(两种请求方法的区别、六个状态码的含义、四个请求头字段的作用、五种反爬机制、四条法律与道德规范),平台自动批改,当场讲评错误率最高的一题;③课后作业:提交抓取程序的源码、运行结果截图与导出的CSV文件。课前预习:平台3道诊断题(请求有哪几种方法、状态码怎么看),统计错误率用于调整讲授重点。课后小结:填表说明:1.序号,指该课程授课的顺序号,应与授课计划一致;2.授课形式在相应的选项打“√”。教学内容及过程时间分配方法及手段思政元素【教师活动】1.给出情境:某电商平台希望采集竞品的商品价格和促销信息,以此制定更有竞争力的定价策略。2.讲技术团队遇到的第一个问题:使用简单的请求方式只能获取部分数据,有些价格信息显示为空白。3.讲他们遇到的第二个问题:频繁发起访问后,来源地址被目标网站封禁,无法继续采集。4.提问:为什么在浏览器里明明能看到的价格,程序抓回来却是空白?让学生先猜。5.讲清结论:网页数据抓取并非仅发送请求即可实现,还需要了解HTTP协议的工作原理,掌握处理各种反爬虫机制的方法。6.点明本任务的内容:系统介绍网页数据抓取的相关技术,包括协议基础、请求库用法、反爬应对与合规要求。7.讲清合规底线:本任务所有课堂练习都在教材示例范围内进行,控制请求频率,不涉及任何个人信息。【学生活动】听情境并记录技术团队遇到的两个问题;对浏览器能看到而程序抓不到发表看法;说出自己听说过的爬虫相关事件。【设计意图】对应知识目标1。用两个真实卡点引入,学生带着问题进入而不是先学协议再找用途;先让学生猜价格为什么是空白,后面讲动态加载时正好回应这个猜想;把合规底线讲在开头而不是放在末尾当补充,学生在整个实操过程中都有这条约束。环节一情境导入:抓回来的价格是空的(8分钟)情境导入任务驱动法(投屏+讲述)网络法治:技术能力不等于许可【教师活动】1.讲定义与地位:HTTP即超文本传输协议,是浏览器与服务器之间通信的标准协议。2.讲工作模型:基于请求与响应模型工作——客户端发送请求,服务器返回响应。讲清理解它是进行网页数据抓取的基础。3.讲第一种请求方法GET:用于请求获取资源,参数附加在网址后面,适合获取网页内容。4.讲第二种请求方法POST:用于向服务器提交数据,参数存放于请求体中,适用于登录、表单提交等场景。5.讲清采集中最常用的是GET:在浏览器地址栏中输入网址并按回车键时,浏览器就会发起一条GET请求。6.讲状态码:服务器返回的响应报文包含状态码,表示请求的处理结果。7.并列六个常见状态码投屏成判读表:200表示请求成功;301与302表示重定向;400表示请求错误;403表示禁止访问;404表示资源未找到;500表示服务器内部错误。8.讲清判读要点:编写采集程序时要根据状态码判断请求是否成功;如果返回403或503,通常说明触发了网站的反爬虫机制。9.现场演示:先正常请求一次读出状态码,再把请求头去掉重新请求一次,学生看到状态码发生变化。10.讲四个请求头字段并投屏成对照表:User-Agent标识发送请求的客户端类型,不设置或使用明显的爬虫标识很容易被识别并拦截;Referer表示请求的来源页面;Cookie用于保持会话状态;Accept表示客户端可接受的内容类型。【学生活动】记录两种请求方法的区别与六个状态码的含义;观察去掉请求头前后状态码的变化并说出说明什么;说出四个请求头字段各自的作用。【设计意图】对应知识目标2、3、4,突破难点状态码判读。六个状态码列成判读表并点明403与503的特殊含义,学生看到失败时先读码再动手;去掉请求头前后状态码的现场对比,把请求头的作用由结果给出而不是口头交代;四个字段各配用途说明,学生设置请求头时知道每一项是为了解决什么问题。环节二HTTP协议请求、状态码与请求头(15分钟)讲授+板书对照表对比演示先看后动:失败先读码不盲目重试【教师活动】1.点明Python提供了多个用于发送HTTP请求的库,其中requests库因其简洁易用的接口而最受欢迎。2.讲安装:通过pip安装,在命令行窗口输入安装命令即可,安装完成后即可在程序中导入使用。机房同步执行安装。3.讲基本用法:用get方法发送GET请求,其基本格式包含目标网址、请求头字典与查询参数字典三个部分,其中目标网址为必填参数。4.讲返回值:该方法返回一个响应对象,包含服务器返回的状态码、响应内容等信息。5.投屏演示第一段:发送请求后打印状态码,再打印响应内容。6.讲两种响应内容的差别:文本格式用于网页;二进制格式适用于图片、文件等二进制资源。7.现场演示打印两种响应内容,学生看到网页文本与字节流的样子。8.讲清本节课用到的解析库:从网页文本里提取信息还需要配合解析库,下一任务会详细讲它的用法。9.提问:要下载一张商品图片,该读响应的哪一个属性?让学生回答并说明理由。【学生活动】跟着执行安装命令;记录get方法的三个参数与返回值;观察两种响应内容的打印结果;回答下载图片该读哪个属性及理由。【设计意图】对应知识目标2、能力目标1,落实重点请求库用法。先讲三个参数各自的角色再讲返回值,学生写调用时不会漏参数;两种响应内容现场对比打印,学生知道什么情况下该读哪一个;把解析库的用法推到下一任务,本环节聚焦在请求本身,不一次塞太多。环节三requests库的安装与基本使用(12分钟)讲授+板书直观演示法(投屏+同步敲)规范操作:环境先备齐再往下走【教师活动】1.讲GET请求的参数传递:通过参数字典传递,requests会自动将其编码并附加到网址后面。2.现场演示:传入关键词与页码两个参数后打印完整请求网址,学生看到参数是如何拼上去的。3.讲POST请求的参数传递:表单参数通过另一个参数名传递,给出登录场景的示例。4.讲为什么必须设置请求头:为了模拟真实浏览器的访问,需要设置合适的请求头。5.讲写法:请求头是一个字典,其中每个键值对代表一个头部字段,键为字段名称,值为对应的字段内容,设置时把该字典传给get方法即可。6.投屏演示一个包含三个字段的请求头:标识客户端浏览器类型的User-Agent、声明可接受内容类型的Accept、指定偏好自然语言的Accept-Language。7.单独强调User-Agent的重要性:建议使用真实浏览器的标识字符串,并且可以准备多个不同的标识轮换使用,以降低被服务器拦截的概率。8.现场演示轮换的做法:准备一个标识列表,每次请求随机取一个。9.提问:参数字典与请求头字典分别解决什么问题?让学生说出前者管查询条件、后者管访问身份。【学生活动】跟着传入参数并观察完整请求网址;记录三个常用请求头字段;说出轮换标识的作用;回答两个字典各自解决什么问题。【设计意图】对应能力目标2,落实重点参数与请求头。打印完整请求网址这一动作让URL编码这件事变得可见,学生不再把它当成黑箱;轮换标识现场演示,把抽象的概率降低变成可执行的一行代码;两个字典的分工用一个追问当场检验,学生写程序时不会把查询条件塞进请求头。环节四请求参数与请求头的设置(12分钟)讲授+板书直观演示法(投屏+同步敲)身份意识:请求要有可辨识的来源【教师活动】1.讲背景:为了保护数据和服务器资源,许多网站会采用反爬虫机制;了解这些机制并合理应对,是数据采集的必备技能。2.讲五种常见机制并投屏成对照表:User-Agent检测是最基础的手段,网站会检查请求是否来自合法浏览器;IP封禁针对频繁请求的来源地址进行限制或封禁;验证码要求用户完成图形、滑动或点选验证才能继续访问;JavaScript渲染把数据通过脚本动态加载,普通静态请求无法直接获取;请求频率限制对单位时间内的请求数量设阈值。3.讲第一条应对策略设置合理的请求头:使用真实浏览器的标识,并根据目标网站的要求设置其他必要的头部字段,现场给出含来源页面的示例。4.讲第二条应对策略控制请求频率:在请求之间添加随机延迟,避免访问过于频繁。现场演示用休眠函数配合随机函数实现一到三秒的随机延迟。5.讲清这条不只是避封,更是尊重对方的服务器资源。6.讲第三条应对策略使用代理:通过代理服务器发送请求,隐藏真实来源地址,现场给出代理字典的写法。7.讲清代理的使用同样要在合规范围内,不能用来规避站点的正当限制。8.讲动态加载数据的两种方案:第一种使用浏览器自动化工具,模拟真实浏览器执行脚本,完整加载页面动态数据,现场演示启动浏览器、打开页面、等待加载、取回页面内容、关闭浏览器五步;第二种分析页面的网络请求,找到数据的真实接口直接请求,讲清这种方法效率更高,但需要一定的抓包分析能力。9.现场演示在开发者工具的网络面板中观察异步请求,找到返回结构化数据的接口。10.并列两种方案的优劣投屏:前者通用但慢,后者快但要会分析。【学生活动】记录五种反爬机制与三条应对策略;跟着写出随机延迟的一行;说出两种动态采集方案各自的优劣;跟着在网络面板中找到一个异步请求接口。【设计意图】对应知识目标5、6,落实重点反爬应对。五种机制与三条策略并列成表,学生遇到问题时能照表定位;随机延迟的动机讲成尊重对方资源而不只是避封,呼应思政中的边界意识;两种动态方案按通用性与效率对比,学生选型时有标准;代理的合规边界一并交代,避免技术被误用。环节五反爬虫机制与应对策略(14分钟)讲授+板书对照表直观演示法尊重权益:控制频率不给对方添压【教师活动】1.点明前提:进行网页数据抓取时,必须遵守法律法规和道德规范。2.讲第一条遵守爬虫协议:该文件遵循爬虫协议标准,明确规定了站点内资源允许爬虫访问、禁止爬虫访问的范围;抓取之前要先查看它。3.现场演示在目标站点域名后加上协议文件名查看其内容。4.讲第二条合理控制请求频率:避免高并发、高频访问行为,防止对目标网站服务器造成过大运行压力。5.讲第三条严禁抓取个人敏感隐私信息:手机号、身份证号等一律不碰。讲清公开可见不等于可以使用。6.讲第四条禁止非法使用:不得将采集的公开数据用于商业牟利、违规传播等一切非法用途。7.讲清总纲:在合法合规、尊重站点权益的前提下开展数据采集工作,是每一位数据采集从业者应恪守的基本职业准则。8.组织一次简短讨论:如果客户要求采集一批含手机号的用户数据,该怎么做?让学生表态并说明理由。9.讲评并给出明确口径:拒绝,并说明法律依据与可替代的合规做法。【学生活动】记录四条规范;跟着查看一次爬虫协议文件;参与讨论并说出客户要求采集手机号时该怎么办及理由。【设计意图】对应知识目标7。四条规范逐条讲清边界而不是笼统说要合规;爬虫协议现场查看,学生知道这个文件真实存在且就在域名后面;公开可见不等于可以使用这一条是本环节的核心判断,配合客户要求采集手机号的讨论当场检验,职业操守在表态中被明确,直接呼应思政中的隐私保护与职业操守。环节六法律与道德规范(8分钟)讲授+板书案例讨论价值澄清职业操守:敏感信息一律不碰【教师活动】1.布置任务:按教材第95–100页的任务实施,完成一个榜单页面的分页抓取。2.先画一次循环里要做的四件事的顺序图投屏:改参数拼网址→发请求并读状态码→解析并取字段→随机延迟。3.讲页面结构:每页显示二十五条,共十页;分页通过网址中的起始位置参数控制,起始为零表示第一页,起始为二十五表示第二页;每条信息包含在类名为item的区块元素中。4.讲清为什么这样设计循环:页码与起始位置之间是乘以每页条数的关系。5.讲第一步请求头:设置浏览器标识字段以模拟真实访问。6.讲第二步循环:遍历十次,每次算出起始位置并拼出网址,用try把发请求包起来,检查状态码为两百才继续解析,否则打印失败与状态码;出异常时打印错误信息。7.讲第三步解析:用解析库把响应文本解析成可查询对象,用选择器取出所有类名为item的区块,再逐个取出标题、评分与一句话简介;简介可能不存在,取不到时填无简介。8.讲清空值处理这一处:不是每条数据都有简介,取之前要先判有没有。9.讲第四步延迟与保存:每次请求后加随机延迟;循环结束后把结果写入文件,注意打开文件时加上换行参数与带签名的编码,用字典写入器写表头与数据行。10.现场演示只抓一页先跑通,再放开十页,讲清先小后大的调试顺序。11.运行程序,逐行核对输出:每一页的成功提示与条数,最后的保存提示与总条数。12.教师巡看,重点检查三处:请求头是否已设置、随机延迟是否加在每次请求之后、打开文件时的换行与编码参数是否正确。13.引导学生用三句话小结:①失败先读状态码;②请求头要真、频率要低;③先跑通一页再放开十页。14.课程在线教学平台推送当堂检测5题(两种请求方法的区别、六个状态码的含义、四个请求头字段的作用、五种反爬机制、四条法律与道德规范),限时5分钟,系统自动批改,当场讲评错误率最高的一题。15.布置作业并预告:下一任务讲网页数据解析,请课前把教材第101–107页的选择器部分先看一遍。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年电子商务行业知识产权纠纷案例分析报告
- 2026年体育用品行业品牌发展报告及新品牌崛起策略研究
- 2026年生物科技行业发展动态与风险防控报告
- 2026年铝业行业投资前景报告:回报周期与风险预警
- 2026年食品行业食品安全与供应链管理报告
- 2026年电子信息产业产量预测与市场销量研究报告
- 2026年信息技术行业政策导向与标准制定报告
- 2026年汽车后市场服务模式与盈利分析报告
- 2026年鞋帽行业CR10报告:市场集中度与竞争格局解读
- 2026年马口铁包装行业创新技术应用手册
- 2026年针灸推拿医师高频面试题包含详细解答
- 《鸦胆子油乳注射液治疗消化道恶性肿瘤临床应用专家共识-公示稿》
- dbj41现浇混凝土内置保温墙体技术规程
- 深度解析(2026)《HJT 81-2001畜禽养殖业污染防治技术规范》
- 消防安全培训医院课件
- 化学检验员高级工练习题库含参考答案
- (2026)急危重症患者的早期识别与评估课件
- 注意缺陷多动障碍(ADHD)法律能力评估与支持方案
- 仓储安全应急预案
- CQC13464225-2024电力储能用锂离子电池安全与性能认证规则
- DB53T 1440-2025 密集烤房烟叶烘烤试验规范
评论
0/150
提交评论