《网络爬虫项目实践》 教案 李程文 项目3、4 scrapy框架爬虫、分布式爬虫.docx
《《网络爬虫项目实践》 教案 李程文 项目3、4 scrapy框架爬虫、分布式爬虫.docx》由会员分享,可在线阅读,更多相关《《网络爬虫项目实践》 教案 李程文 项目3、4 scrapy框架爬虫、分布式爬虫.docx(10页珍藏版)》请在第一文库网上搜索。
1、项目三SCraPy框架爬虫教案课程名称:网络爬虫项目实践课程类别:必修适用专业:大数据技术类相关专业总学时:64学时(其中理论28学时,实验36学时)总学分:4.0学分本章学时:3学时一、材料清单(1)网络爬虫项目实践教材。(2)配套PpT。(3)引导性提问。(4)探究性问题。(5)拓展性问题。二、教学目标与基本要求1教学目标本项目分为三个任务,任务1通过当当网的爬取演示如何使用Scrapy的基本使用,任务2通过赶集网的登录演示Scrapy的模拟登录功能,任务3通过失信人信息爬取演示Scrapy爬取复杂网站的方法。2.、基本要求(1)掌握使用SCraPy创建爬虫项目的方式(2)掌握SCraPy
2、创建爬虫文件命令的使用(3)掌握使用Scrapy进行数据爬取的基本方法(4)掌握使用SCraPy模拟登录赶集网的方法(5)掌握将爬取结果存储到MySQ1数据库的方法(6)掌握AjaX数据爬取方式三、问题1 .引导性提问引导性提问需要教师根据教材内容和学生实际水平,提出问题,启发引导学生去解决问题,提问,从而达到理解、掌握知识,发展各种能力和提高思想觉悟的目的。(1) Scrapy项目是由哪些主要文件和目录组成的?(2) SCraPy如何定义提取的结构化数据(Item)?(3) SeraPy如何编写爬虫(Spider)并从网页中提取I1em?2 .探究性问题探究性问题需要教师深入钻研教材的基础上
3、精心设计,提问的角度或者在引导性提问的基础上,从重点、难点问题切入,进行插入式提问。或者是对引导式提问中尚未涉及但在课文中又是重要的问题加以设问。(1) Scrapy如何使用管道(PiPe1ine)来存储或处理提取到的Item?(2) SCraPy如何使用中间件(Midd1eWare)来自定义下载或处理请求和响应?(3) Scrapy如何使用选择器(SeIeCtOr)或Beautifu1Soup来解析HTM1或XM1文档?3 .拓展性问题拓展性问题需要教师深刻理解教材的意义,学生的学习动态后,根据学生学习层次,提出切实可行的关乎实际的可操作问题。亦可以提供拓展资料供学生研习探讨,完成拓展性问题
4、。(1) SCraPy如何使用信号(Signa1)来在爬虫的不同阶段执行自定义操作?(2) SCraPy如何使用扩展(EXtenSion)来增加或修改SCraPy的核心功能?(3) SCraPy如何使用调度器(SehedUIer)来控制请求的优先级或延迟?四、主要知识点、重点与难点1 .主要知识点(1) Scrapy创建爬虫项目的方式(2) SCraPy常见命令的使用(3) SCraPy模拟登录的方式(4) Scrapy数据存储的方式2 .重点(1) Scrapy创建爬虫项目的方式(2) Scrapy常见命令的使用(3) SCraPy模拟登录的方式(4) SeraPy数据存储的方式3 .难点(
5、1) SCraPy创建爬虫项目的方式(2) SCraPy常见命令的使用(3) SCraPy模拟登录的方式(4) Scrapy数据存储的方式五、教学过程设计1 .理论教学过程(1) Scrapy项目是由一些主要文件和目录组成的,包括scrapy.cfg,items.py,pipe1ines.py,settings.py,spiders等。(2) SCraPy项目中定义了Item类,用来封装提取的结构化数据,类似于PythOn中的字典,但是提供了一些额外的保护减少错误。(3) SCraPy项目中编写了SPider类,用来定义爬虫的行为和逻辑,如起始UR1,请求方式,解析规则等。(4) Scrapy
6、项目中使用了Pipe1ine类,用来处理Spider提取到的Item,并进行后期处理(详细分析、过漉、存储等)。(5) SCraPy项目中使用了MiddIeWare类,用来自定义下载或处理请求和响应,如设置代理、修改头部、重试等。(6) Scrapy项目中使用了Se1ector类,用来解析HTM1或XM1文档,支持XPath和CSS选择器两种语法。(7) SCraPy项目中使用了Engine类,用来负责SPider、ItemPiPeIine、Down1oaderSChedUIer之间的通讯,信号、数据传递等。(8) SCraPy项目中使用了SChedU1er类,用来接受引擎发送过来的ReqUe
7、St请求,并按照一定的方式进行整理排列,入队,当引擎需要时,交还给引擎。(9) SCraPy项目中使用了DoWnIoader类,用来下载SCraPyEngine发送的所有ReqUeStS请求,并将其获取到的Responses交还给ScrapyEngineo(10) SCraPy项目中使用了Signa1类,用来在爬虫的不同阶段执行自定义操作,如爬虫启动、关闭、异常等。(11) 教学过程(1)创建SCraPy项目(2)商品数据爬取(3)商品数据处理(4)获取表单HaShCode(5)获取验证码(6)定义数据模型(7)创建下载器中间件六、教材与参考资料1 .教材李程文,唐建生,冯欣悦.网络爬虫项目实
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络爬虫项目实践 网络爬虫项目实践 教案 李程文 项目3、4 scrapy框架爬虫、分布式爬虫 网络 爬虫 项目 实践 scrapy 框架 分布式