《Python网络爬虫基础教程-教学大纲.docx》由会员分享,可在线阅读,更多相关《Python网络爬虫基础教程-教学大纲.docx(15页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、样的教育,不一样的品质黑马程序员 itheima 传智教育旗下 高端IT教育品牌Python网络爬虫基础教程课程教学大纲(课程英文名称)课程编号:学 分:5学分学 时:44课时 (其中:讲课28课时上机20课时)先修课程:Python快速编程入门(第2版)适用专业:信息技术及计算机相关专业一、课程的性质与目标Python网络爬虫基础教程是面向计算机相关专业的一门专业实训课,涉及网络爬 虫基础知识、网页请求原理、静态页面数据抓取、动态页面数据抓取、数据存储、提升网络 爬虫速度、验证码识别、网络爬虫框架Scrapy等内容。通过本课程的学习,学生能够掌握网络爬虫相关知识,学会使用Python编写网络
2、爬虫 应用程序。本课程适用于广大计算机编程的初学者。二、课程设计思路和教学要求课程设计理念:坚持“理论够用度,突出实践教学”的宗旨,以就业为导向、应用为目 标、实践为主线,以案例驱动式教学为特色,表达“教、学、做”一体教学方法。重视学生 职业能力的培养,突出课程与企业的紧密联系,确保培养的内容与就业市场的需求到达无缝 衔接。课程设计思路:课程内容需突出技能性,以理论适度、重在实践为原那么,将Python网 络爬虫用到的基础知识与基本技能作为主要的教学内容。在教学方式上采用“理论知识+代 码例如+案例练习”的模式,既有普适性的介绍,又提供了充足的案例,确保读者在理解核 心知识的前提下可以做到学以
3、致用。通过使用本书,读者可以全面地掌握Python网络爬虫 的相关知识,具备开发网络爬虫程序的能力。网址:yx.ityxb 教学交流QQ/微信号:2011168841犯章目讲课上机合计第1章认识网络爬虫202第2章网页请求原理314第3章抓取静态网页数据314第4章解析网页数据426第5章抓取动态网页数据224第6章提升网络爬虫速度224第7章存储数据224第8章验证码识别246第9章 初识网络爬虫框架Scrapy224第10章Scrapy核心组件与CrawlSpider类224第11章 分布式网络爬虫Scrapy-Redis426合计282048黑马程序员 itheima 黑马程序员 ith
4、eima 传智教育旗下 高端IT教育品牌样的教育,不一样的品质、课时分配五、考核模式与成绩评定方法本课程为考试课程,期末考试采用百分制的闭卷考试模式。学生的考试成绩由平时成绩(30% )和期末考试(70% )组成,其中,平时成绩包括出勤(5% )、作业(5% )、上机成绩(20% ) 0六、选用教材和主要参考书本大纲是根据黑马程序员编著的教材Python网络爬虫基础教程所设计的。七、大纲说明本课程的授课模式为:课堂授课+上机,其中,课堂主要采用多媒体的方式进行授课, 并且会通过测试题阶段测试学生的掌握程度;上机主要是编写程序,要求学生动手完成指定网址:yx.ityxb 教学交流QQ/微信号:2
5、011168841样的教育,不一样的品质黑马程序员 itheima 传智教育旗下 高端IT教育品牌的程序设计或验证。撰写人:批准人:审定人:执行时间:网址:yx.ityxb 教学交流QQ/微信号:2011168841样的教育,不一样的品质黑马程序员 itheima 传智教育旗下 高端IT教育品牌操作系统:Windows 7 (64位) 开发工具:PyCharm三、课程的主要内容及基本要求第1章认识网络爬虫学习单元认识网络爬虫课时2学习目标1 .熟悉网络爬虫的概念及分类,能够归纳通用网络爬虫和聚焦网络爬虫的区别2 .了解网络爬虫的应用场景,能够列举至少3个网络爬虫的应用场景3 .熟悉网络爬虫的R
6、obots协议,能够说明robots.txt文件中每个选项的含义4 .熟悉防网络爬虫的应对策略,能够列举至少3个应对防爬虫的策略5 .掌握网络爬虫的工作原理,能够定义通用网络爬虫和居家网络爬虫的工作原 理6 .熟悉网络爬虫的工作流程,能够归纳网络爬虫抓取网页的完整流程7 .了解网络爬虫的实现技术,能够说出使用Python实现网络爬虫有哪些优势8 .熟悉网络爬虫的实现流程,能够归纳使用Python实现网络爬虫的流程学习内容知识点了解熟悉掌握重点难点什么网络爬虫VV网络爬虫的应用场景VRobots协议防爬虫应对策略VV网络爬虫的工作原理V网路爬虫抓取网页的流程VV网络爬虫的实现技术VPython实
7、现网络爬虫的流程VV第2章网页请求原理网址:yx.ityxb 网址:yx.ityxb 教学交流QQ/微信号:2011168841学习单元网页请求原理课时41.了解浏览器加载网页的完整过程,能够复述出浏览器加载网页的过程学习目标2 .熟悉 基本原理,能够归纳URL格式、 请求格式和 响应格 式3 .熟悉网页基础知识,能够区分HTML、JavaScript和CSS三者的区别4 .掌握抓包工具Fiddler的使用,能够独立安装并使用Fiddler工具学习内容知识点了解熟悉掌握重点难点浏览器加载网页的过程URL简介V 和 SV 请求格式VV 响应格式V网页开发技术VVV网页的结构V网页的分类V网页数据
8、的格式VVFiddler的工作原理VFiddler的下载与安装VFiddler界面详解VVFiddler捕获 S页面 的设置VFiddler的基本使用V黑马程序员 itheima 传智教育旗下 高端IT教育品牌样的教育,不一样的品质第3章抓取静态网页数据网址:yx.ityxb 网址:yx.ityxb 教学交流QQ/微信号:2011168841学习单元抓取静态网页数据课时4学习目标1 .了解抓取静态网页的实现技术,能够说出每种实现技术的特点2 .掌握Requests中基本请求的发送方式,能够向服务器发送GET请求和POST 请求3 .掌握Requests中响应结果的处理方式,能够以根据需要获取响
9、应内容4 .掌握Requests中请求头的定制方式,能够为GET请求和POST请求定制请 求头5 .掌握Requests中代理服务器的设置方式,能够为请求设置代理服务器6 .掌握Requests中异常的处理方式,能够处理请求超时异常学习内容知识点了解熟悉掌握重点难点抓取静态网页的技 术V发送GET请求V发送POST请求VV处理响应V定制请求头VV验证CookieVV保持会话VVSLL证书验证VV代理服务器简介V设置代理服务器VV检测代理IP的有效 性7V处理异常VVV黑马程序员 itheima 黑马程序员 itheima 传智教育旗下 高端IT教育品牌样的教育,不一样的品质第4章解析网页数据网
10、址:yx.ityxb 网址:yx.ityxb 教学交流QQ/微信号:2011168841学习单元解析网页数据课时6学习目标1 .了解解析网页的技术,能够说出正那么表达式、XPath Beautiful Soup与 JSONPath的特点2 .熟悉正那么表达式的语法,能够归纳元字符与预定义字符集的函数以3 .掌握re模块的用法,能够灵活应用re模块解析网页数据4,了解XPath的概念,能够说出XPath的路径表达式的搜索方法5 .掌握XPath的语法,能够根据需要编写XPath的路径表达式6 .掌握XPath的开发工具,能够独立安装与使用XPath Helper工具7 .掌握Ixml库的语法,能
11、够灵活应用Ixml库解析网页8 .熟悉Beautiful Soup,能够归纳Beautiful Soup包含的类基本用法9 .掌握Beautiful Soup类的对象的创立方式,能够使用Beautiful Soup类的构造 方法创立Beautiful Soup类的对象10 .掌握Beautiful Soup中选取节点的方式,能够使用查找方法和CSS选择选 取节点11 .熟悉JSONPath的语法,能够熟练地编写JSONPath的表达式12 .掌握jsonpath模块的用法,能够灵活运用jsonpath模块解析JSON文档学习内容知识点了解熟悉掌握重点难点解析网页数据的技 术V正那么表达式的语法
12、Vre模块的使用VXPath简介XPath语法VVVXPath开发工具VIxml库简介VVVBeautiful Soup 简介V创立 Beautiful Soup类的对象VVV通过查找方法选取 节点VV通过CSS选择器选 取节点VVVJSONPath 语法Vjsonpath模块的使用V黑马程序员 itheima 传智教育旗下 高端IT教育品牌样的教育,不一样的品质第5章抓取动态网页数据学习单元抓取动态网页数据课时4学习目标1 .了解抓取动态网页的技术,能够说出Selenium有哪些特点2 .掌握Selenium和 WebDriver的安装与配置,能够独立安装Selenium和 WebDrive
13、r3 .掌握Selenium的基本使用,能够使用Selenium抓取动态网页数据的功能学习内容知识点了解熟悉掌握重点难点抓取动态网页的技 术7Selenium和Webdriver的安装与 配置VVWebDriver类的常用 属性和方法VV定位元素VV鼠标操作VVV下拉列表框操作VV弹出框处理VV页面切换VVV页面等待VVV第6章提升网络爬虫速度网址:yx.ityxb 网址:yx.ityxb 教学交流QQ/微信号:2011168841学习单元提升网络爬虫速度课时4学习目标1 .了解网络爬虫速度的提升方案,能够说出多线程和协程的区别2 .熟悉多线程爬虫的运行流程,能够说出多线程爬虫的运行流程3 .
14、掌握多线程爬虫的实现技术,能够使用threading和queue模块实现多线程爬 虫4 .熟悉协程爬虫的运行流程,能够归纳写好才能爬虫的运行流程5 .掌握协程爬虫的实现技术,能够使用asyncio和aio 库实现协程爬虫学习内容知识点了解熟悉掌握重点难点网络爬虫速度提升 方案V多线程爬虫流程分 析VV多线程爬虫实现技 术VVV多线程爬虫基本示 例VVV协程爬虫流程分析VV协程爬虫实现技术VV协程爬虫基本例如V协程与多线程性能 分析V黑马程序员 itheima 传智教育旗下 高端IT教育品牌样的教育,不一样的品质第7章存储数据网址:yx.ityxb 网址:yx.ityxb 教学交流QQ/微信号:
15、2011168841学习单元存储数据课时4学习目标1 .了解数据存储的两种方式,能够区分文件存储和数据库存储的利弊2 .熟悉MongoDB数据库的安装,能够独立安装MongoDB数据库3 .掌握Python操作MongoDB数据库的方式,能够使用pymongo模块操作 MongoDB数据库的数据4 .掌握Redis数据的安装,能够独立安装Redis数据库5 .掌握Python操作Redis的方式,能够使用redis模块操作Redis数据库的数 据学习内容知识点了解熟悉掌握重点难点数据存储的方式V下载与安装MongoDBV使用Python操作MongoDBVVV下载与安装RedisV使用Pyth
16、on操作RedisVV7Redis桌面管理工具V黑马程序员 itheima 黑马程序员 itheima 传智教育旗下 高端IT教育品牌样的教育,不一样的品质第8章验证码识别学习单元验证码识别课时4学习目标1. 了解验证码的分类,能够说出常见验证码的特点2,掌握字符验证码的识别方法,能够使用pytesseract实现识别字符验证码的功 能3 .掌握滑动拼图验证码的识别方法,能够使用Selenium实现识别滑动拼图验证 码的功能4 .熟悉点选验证码的识别方法,能够使用Selenium结合超级鹰平台实现识别点 选验证码的功能学习内容知识点了解熟悉掌握重点难点Tesseract-OCRV百度OCRV滑
17、动拼图验证码的 识另UV注册超级鹰账号VV截取点选验证码图 片VV使用超级鹰识别点 选验证码的文字V使用Selenium单击 验证码中的文字V第9章初识网络爬虫框架Scrapy网址:yx.ityxb 网址:yx.ityxb 教学交流QQ/微信号:2011168841学习单元初识网络爬虫框架Scrapy课时4学习目标1 .了解什么是Scrapy框架,能够复述出Scrapy框架的优点与缺点2 .熟悉Scrapy框架的架构,能够归纳每个组件的功能与职责3 .熟悉Scrapy框架的运作流程,能够说出Scrapy框架的运作流程4 .掌握Scrapy框架的安装方式,能够独上安装Scrapy框架,并能解决安
18、装过 程中出现的常见问题5 .掌握Scrapy框架的基本操作,能够灵活应用Scrapy框架新建工程和制作爬 虫学习内容知识点了解熟悉掌握重点难点Scrapy框架简介VScrapy框架架构VVVScrapy框架运作流程VVScrapy框架安装V新建Scrapy工程VV明确采集目标VVV制作爬虫VVV永久存储数据VVV黑马程序员 itheima 传智教育旗下 高端IT教育品牌样的教育,不一样的品质第10章Scrapy核心组件与CrawlSpider类网址:yx.ityxb 网址:yx.ityxb 教学交流QQ/微信号:2011168841学习单元Scrapy核心组件与CrawlSpider类课时4
19、学习目标1 .掌握Spiders组件,能够应用Spiders组件实现数据的抓取和解析2 .掌握Item组件,能够应用Item组件实现封装数据的功能3 .掌握ItemPipeline组件,能够应用ItemPipeline组件实现处理后期数据的功能4 .掌握 Downloader Middlewares 组件,能够应用 Downloader Middlewares 中间 件应对防爬虫行为5 .掌握Settings组件,能够使用Settings组件中的配置项定制各个Scrapy组件 的行为6 .熟悉CrawlSpider类的用途,能够归纳CrawlSpider与Spider的区别7 . 了解Craw
20、lSpider类的工作原理,能够说出CrawlSpider类是如何工作的8 .掌握Rule类的使用,能够灵活应用Rule类制定爬虫爬取规那么9 .掌握LinkExtractor类的使用,能够通过LinkExtractor类提取需要跟踪爬取的 链接学习内容知识点了解熟悉掌握重点难点Spiders 组件VVVItem Pipeline 组件VV内置下载中间件VV自定义下载中间件VVV激活下载中间件VSettings 组件VVCrawlSpider 类简介CrawlSpider 类的工 作原理V通过Rule类决定抓 取规那么VVV通过 LinkExtractor 类提取链接VV7黑马程序员 ithe
21、ima 黑马程序员 itheima 传智教育旗下 高端IT教育品牌样的教育,不一样的品质第11章分布式网络爬虫Scrapy-Redis学习单元分布式网络爬虫Scrapy-Redis课时6学习目标1 .了解分布式网络爬虫,能够说出采用主从模式的分布式网络爬虫的特点2 .熟悉Scrapy-Redis的架构,能够归纳Scrapy-Redis架构的原理3 .熟悉Scrapy-Redis的运作流程,能够归纳 出Scrapy-Redis的运作流程4 .掌握Scrapy-Redis准备工作,能够搭建Scrapy-Redis的开发环境5 .掌握Scrapy-Redis的基本操作,能够灵活应用Scrapy-Redis开发分布式网络 爬虫学习内容知识点了解熟悉掌握重点难点分布式网络爬虫简介VScrapy-Redis 架构VVScrapy-Redis运作流程VVVScrapy-Redis开发准备安装 Scrapy-RedisVVV修改配置文件VVV测试远程连接VVV新建Scrapy-Redis工程V明确采集目标V制作爬虫VVV运行爬虫VV使用管道存储数据VV网址:yx.ityxb 教学交流QQ/微信号:2011168841
限制150内