《Python网络爬虫基础教程 教案第2章 网页请求原理.docx》由会员分享,可在线阅读,更多相关《Python网络爬虫基础教程 教案第2章 网页请求原理.docx(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、样的教育,不一样的品质黑马程序员 itheima 传智教育旗下 高端IT教育品牌黑马程序员Python网络爬虫基础教程教学设计课程名称: 授课年级:授课学期:教师发名:(3)使用Fiddler捕获请求有道翻译时,发送的网络请求。教学后记黑马程序员 itheima 传智教育旗下 高端IT教育品牌样的教育,不一样的品质黑马程序员课题名称第2章网页请求原理计戈U 课时4课时教学引入网络爬虫请求网页的过程可以理解为用户使用浏览器加载网页的过程,在 这一过程中浏览器向网站服务器发送请求,网站服务器响应请求后将网页源代 码传送回来。因此,了解浏览器与服务器之间的通信方式和交互过程,理解网 页开发技术、结构
2、、分类、数据格式,能进一步加深对网络爬虫的理解。本章 将针对网页请求原理的相关知识进行讲解。教学目标 使学生了解浏览器加载网页的过程,能够复述出浏览器加载网页的过程 使学生熟悉 的基本原理,能够归纳URL格式、 请求格式和 响应格式 使学生熟悉网页基础,能够区分HTML、JavaScript和CSS三者的区别 使学生掌握 抓包工具Fiddler的使用,能够独立安装并使用Fiddler 工具教学重点 请求格式 响应格式 网页开发技术 网页的结构 网页数据的格式 Fiddler的下载与安装 Fiddler的基本使用教学难点网页开发技术 Fiddler的基本使用教学方式课堂教学以PPT讲授为主,并结
3、合多媒体进行教学教 学 过 程第一课时(浏览器加载网页的过程、URL简介、 和 S、 请 求格式、 响应格式)、创设情景,导入新课在第1章,我们学习了什么是网络爬虫以及网络爬虫的基本实现流程,对 于网络爬虫而言抓取的数据都在网页中,因此我们有必要学习浏览器加载网页 的完成过程以及URL简介、HTPP和 S协议、 请求格式、 响 应格式等。二、新课讲解知识点1浏览器加载网页的过程教师通过PPT的方式讲解浏览器加载网页的过程。浏览器通过DNS (Domain Name System,域名系统)服务器查找百度服 务器对应的IP地址。浏览器向IP地址对应的Web服务器发送 请求。Web服务器接收 请求
4、后进行处理,向浏览器返回HTML页面。浏览器对HTML页面进行渲染呈现给用户。知识点2- URL简介教师通过PPT的方式讲解URL简介。(1)熟悉URL的概念和语法格式。(2)熟悉URL格式中各选项的含义。 itheima 传智教育旗下 高端IT教育品牌样的教育,不一样的品质黑马程序员 itheima 传智教育旗下 高端IT教育品牌样的教育,不一样的品质教师通过PPT的方式讲解URL的概念和语法格式。URL (全称Uniform Resource Locator)又称URL地址,表示统一资源定位 符,它用于指定因特网上某个资源的位置。scheme:/user:passwordhost:port
5、/path;params?query#frag 上述语法格式中,中括号包裹的选项为可选项,关于URL地址语法格式中 各选项的说明如下:教师通过PPT的方式讲解URL格式中各选项的含义。(1) scheme:表示方案,用于标识采用哪种传输协议访问服务器资源user:表示用户,用于标识采用某些方案访问资源时需要使用的用户名(2) password:表示密码,用户名后面可能要包含的密码,中间以冒号分隔(3) host:表示主机地址,也就是存放资源的服务器主机名或IP地址(4) port:表示端口,也就是存放资源的服务器监听的端口号(5) path:用于指定本次请求资源在服务器中的位置(6) para
6、ms:表示访问资源时使用的协议参数,参数之间以;分隔(7) query:表示查询字符串,用于指定查询的资源,一般使用?与URL的 其余局部进行分隔。查询字符串没有通用格式,它通常会以&多个参数,每个 参数的名称与值使用=进行连接。(8) frag:表示片段,用于指定访问资源时某一局部资源的名称。知识点3- 和 S教师通过PPT的方式讲解 和 S协议。(1)熟悉 协议的概念。(2)熟悉 S协议的概念。教师通过PPT的方式讲解 协议的概念。 协议全称为超文本传输协议(Hypertext Transfer Protocol),它用于将 Web服务器的超文本资源传送到浏览器中。 协议能够高效准确的传送
7、超 文本资源,但浏览器与Web服务器的连接是一种一次性连接,它限制每次连接 只处理一个请求,这意味着每个请求都是独立的,当服务器返回本次请求的应 答后便立即关闭连接,下次请求再重新建立连接。教师通过PPT的方式讲解 S协议的概念。 S协议全称为超文本传输平安协议(Hypertext Transfer Protocol Secure),该协议是基于 协议基础上添加了 SSL (Secure Sockets Layer安 全套接字协议),数据在传输过程中主要通过数字证书、加密算法、非对称密钥 等技术完成互联网数据传输加密,实现互联网传输平安保护。知识点4- 请求格式教师通过PPT的方式讲解 请求格
8、式。(1)熟悉 请求格式的组成。(2)熟悉请求行数据。(3)熟悉请求头数据。教师通过PPT的方式讲解 请求格式的组成。一次 通信的过程包括 请求和 响应,其中 请求是 指从浏览器到服务器端的请求信息,它由请求行、请求头部、空行、以及请求 数据(有的也称为请求体)这四个局部组成,如下列图所示。黑马程序员 itheima 传智教育旗下 高端IT教育品牌样的教育,不一样的品质请求行教师通过PPT的方式讲解请求行。请求行的格式如下所示。GET /item/Python/407313 /1.1在请求行中,GET表示向服务器请求网络资源时所使用的请求方法, /item/Python/407313表示请求的
9、URL地址, /L1表示使用的 协议版 本。教师通过PPT的方式讲解请求头。(1) HostHost用于指定被请求资源的服务器主机名和端口号。(2) User-AgentUser-Agent用于标识客户端身份,通常页面会根据不同的User-Agent信息 自动做出适配,甚至返回不同的响应内容。(3) AcceptAccept用于指定浏览器或其他客户端可以接受的MIME (Multipurpose Internet Mail Extensions,多用途互联网邮件扩展)文件类型,服务器可以根据 该字段判断并返回适当的文件格式。(4) RefererReferer用于标识当前请求页面的来源页面地址
10、,即表示当前页面是通过此 来源页面里的链接进入的。(5) Accept-CharsetAccept-Charset用于指定浏览器可以接受的字符集类型,在早期版本的 /1.1协议中,规定了一个默认的字符集(ISO-8859J),但目前每一种内容 类型都有自己的默认字符集。(6) CookieCookie是在浏览器中寄存的小型数据体,它可以记载和服务器相关的用户 信息,也可以用来实现模拟登录。(7) Content-TypeContent-Type也叫互联网媒体类型(Internet Media Type)或者MIME类型, 用于告知服务器POST请求或PUT请求中的数据类型信息。知识点5- 响应
11、格式教师通过PPT的方式讲解 响应格式。(1)熟悉 响应格式基本格式。(2)熟悉状态行的组成。(3)熟悉响应头信息。(4)熟悉响应正文。教师通过PPT的方式讲解 响应格式基本格式。黑马程序员 itheima 传智教育旗下 高端IT教育品牌样的教育,不一样的品质服务器端发送给客户端的响应信息,由4个局部组成,分别是状态行、响 应头、空行、以及响应正文。如下列图所示。教师通过PPT的方式讲解状态行的组成。状态行的格式如下所示。 /1.1 200 OK在状态行中, /L1表示 协议的版本号,200表示响应状态码, OK表示响应状态码的简短描述。教师通过PPT的方式讲解响应头信息。(1) Cache-
12、Control: must-revalidate, no-cache, privateCache-Control表示服务端告知客户端(浏览器)当前的 响应是否可 以缓存,当取值为must-revalidate表示在一个缓存过期之后,不能直接使用这 个过期的缓存,必须检验之后才能使用;当取值为no-cache表示客户端可以缓 存资源,每次使用缓存资源前都必须重新验证其有效性;当取值为private表示 响应只能被单个用户缓存,不能作为共享缓存。(2) Connection: keep-alive, closedConnection表示客户端是否使用持久 连接,当取值为keep-alive表示 使
13、用持久连接;当取值为closed表示不使用持久连接。(3) Content-Encoding:gzip, compress, identityContent-Encoding表示服务端对特定媒体类型的数据进行压缩,当取值为 gzip表示采用Lempel-Ziv压缩算法;当取值为compress表示采用 Lempel-Ziv-Welch算法;当取值为identity表示数据未经压缩或修改。(4) Content-Type: text/html ;charset=UTF-8Content-Type表示服务端告知客户端实际返回的内容的内容类型,当取值 为text/html;charset=UTF-8
14、表示服务端返回资源文件的类型为text/html,字符编 码格式为UTF-8o教师通过PPT的方式讲解响应正文。响应正文是服务器返回的具体数据,常见的数据是HTML文档。浏览器在 接收到 响应后,会根据响应正文的不同类型进行不同的处理。对于IE浏 览器来说,如果响应正文是DOC文档,这时浏览器会借助安装在本机的Word 程序翻开这份文档;如果响应正文是RAR压缩文档,这时浏览器会弹出一个下 载窗口让用户下载;如果响应正文是HTML文档,这时浏览器会在自身的窗口 中展示该文档。三、归纳总结教师回顾本节课所讲的内容,并通过测试题的方式引导学生解答问题并给 予指导。四、布置作业教师通过高校教辅平台(
15、 :/tch. ityxb. com)布置本节课作业以及下黑马程序员传智教育旗下 itheima I高端IT教育品牌一样的教育,不一样的品质节课的预习作业。第二课时(网页开发技术、网页的结构、网页的分类、网页数据的格式) 一、复习巩固教师通过上节课作业的完成情况,对学生吸收不好的知识点进行再次巩固 讲解。二、教师通过直接导入的方式导入新课上节课主要讲解了浏览器加载网页的过程、URL简介、 和 S、 请求格式和 响应格式,接下来,本节课将讲解网页开发技术、网 页的结构、网页的分类和网页数据的格式。三、新课讲解知识点1-网页开发技术教师通过PPT的方式讲解网页开发技术。(1)熟悉什么是HTML。(
16、2)熟悉什么是CSS。(3)熟悉什么是JavaScript。教师通过PPT的方式讲解什么是HTMLoHTML的英文全称HyperText Markup Language,即超文本标记语言,是一 种用于创立网页的标准标记语言。一个HTML文档由一系列的HTML元素组 成,HTML元素的组成如下列图所示。开始偿结束偿内容i阳今天天气真而疯;元素教师通过PPT的方式讲解什么是CSSoCSS (Cascading Style Sheets)全称为层叠样式表,它用于更改HTML页面 中内容的字体、颜色、大小、间距或者添加动画及其他的效果。教师通过PPT的方式讲解什么是JavaScriptoJavaScr
17、ipt是一门独立的网页脚本编程语言,它主要用于向HTML网页中 添加交互行为。知识点2.网页的结构教师通过PPT的方式讲解网页结构。(1)熟悉如何查看网页源代码。(2)熟悉HTML D0M标准。教师通过PPT的方式讲解如何查看网页源代码。如果想要了解一个网页的结构,我们可以直接在浏览器翻开的右键菜单中 选择“检查”选项。教师通过PPT的方式讲解HTML DOM标准。根据万维网联盟(World Wide Web Consortium,简称 W3C)的 HTML DOM 标准,HTML DOM由节点组成,HTML文档的所有内容都是节点,整个HTML 文档是一个文档节点,每个HTML元素是元素节点,
18、每个HTML属性是属性 节点,每个注释是注释节点。把一个HTML文档中的所有节点组织在一起,就 构成了一棵HTML DOM树,这些节点之间存在层级关系,HTML DOM节点黑马程序员 itheima 传智教育旗下 高端IT教育品牌样的教育,不一样的品质树如下列图。知识点3.网页的分类教师通过PPT的方式讲解网页分类(1)熟悉什么是静态网页。(2)熟悉什么是动态网页。教师通过PPT的方式讲解静态网页。静态网页是纯粹HTML格式的网页,它是一个标准的HTML文件,文件 的扩展名为.htm、.html。静态网页可以包含文本、图像、声音、FLASH动画、 超链接等内容,这些内容在编写网页源代码时已经确
19、定,基本上不会发生变化, 除非网页源代码被重新修改。教师通过PPT的方式讲解动态网页。动态网页相比静态网页,动态网页有数据库支撑、包含程序以及提供与用 户交互功能,比方用户登录、用户注册、信息查询等功能,这些功能根据用户 传入不同参数网页会显示不同数据。知识点4.网页数据的格式教师通过PPT的方式讲解网页数据格式。(1)熟悉什么是非结构化数据。(2)熟悉什么是结构化数据。教师通过PPT的方式讲解什么是非结构化数据。非结构化数据是指数据结构不规那么或不完整,没有预定义的数据模型,不 方便使用数据库二维逻辑来表现的数据,即先有数据,再有结构,例如,文本、 邮箱地址、HTML文件等。教师通过PPT的
20、方式讲解什么是结构化数据。结构化数据就是能够用数据或统一的结构加以表示,具有模式的数据,即 先有结构,再有数据,例如,JS0N和XML等。四、归纳总结教师回顾本节课所讲的内容,并通过测试题的方式引导学生解答问题并给 予指导。五、布置作业教师通过高校教辅平台( :/tch.ityxb )布置本节课作业以及下节课 的预习作业。黑马程序员 itheima 传智教育旗下 高端IT教育品牌样的教育,不一样的品质第三课时(Fiddler的工作原理、Fiddler的下载与安装、Fiddler界面详解、 Fiddler捕获 S页面的设置、Fiddler的基本使用) 一、复习巩固教师通过上节课作业的完成情况,对
21、学生吸收不好的知识点进行再次巩固 讲解。二、教师通过直接导入的方式导入新课上节课主要讲解了网页开发技术、网页的结构、网页的分类、网页数据格 式,接下来,本节课将讲解Fiddler的工作原理、Fiddler的下载与安装、Fiddler 捕获 S页面的设置、Fiddler的基本使用。四、新课讲解知识点1- Fiddler的工作原理教师通过PPT的方式讲解Fiddler的工作原理。(1) 了解什么是Fiddler。(2)掌握Fiddler的工作原理。教师通过PPT的方式讲解什么是Fiddler。Fiddler是一个 协议调试代理工具,它能够记录客户端和服务器之间 的所有 请求,支持对网络传输过程中发
22、送与接收的数据包进行截获、重 发、编辑、转存等操作。教师通过PPT的方式讲解Fiddler的工作原理。Fiddler是以代理服务器的形式工作,它会在浏览器和Web服务器之间建 立代理服务器,这个代理服务器默认使用的代理地址为12700.1,端口为8888。 当Fiddler启动时会自动设置代理,退出时会自动注销代理,这样就不会影响其 他程序。Fiddler的工作原理如下列图所示。Microsoft Edge Safiwi浏览器Fiddler代理服务器Web服务器知识点2-Fiddler的下载与安装教师通过PPT的方式讲解Fiddler的下载与安装。(1)掌握Fiddler的下载与安装。关于Fi
23、ddler的下载与安装详细步骤请查看第2章2.4.2节或配套PPT对应 章节内容。知识点3-Fiddler界面详解教师通过PPT的方式讲解Fiddler界面详解。启动Fiddler程序,选中Fiddler操作界面左侧的第一条信息后,此时Fiddler 的操作界面如下列图所示。黑马程序员 itheima 传智教育旗下 高端IT教育品牌样的教育,不一样的品质Fiddler操作界面包含菜单栏、工具栏、会话窗口、Request窗口、Response 窗口、命令行窗口和状态栏共7个区域。其中会话窗口只展示了所有的采用 协议的会话(代表浏览器与服务器的通讯过程,过程中会产生多个 请求和 响应)列表,并选中
24、了列表中的第一条会话;Request窗口和Response窗口展示了该会话的详细信息。关于Fiddler界面中的图标以及选项说明请查看第2章2.4.3节或配套PPT 对应章节内容。知识点4-Fiddler捕获 S页面的设置教师通过PPT的方式讲解Fiddler捕获HTPS页面的设置。关于Fiddler捕获 S页面的设置详细步骤请查看第2章2.4.4节或配套 PPT对应章节内容。知识点5-Fiddler的基本使用教师通过PPT的方式讲解Fiddler的基本使用。通过捕获有道翻译的网络请求演示Fiddler的基本使用,具体详细步骤请查 看第2章2.4.5节或配套PPT对应章节内容。四、归纳总结教师
25、回顾本节课所讲的内容,并通过测试题的方式引导学生解答问题并给 予指导。五、布置作业教师通过高校教辅平台( :/tch.ityxb )布置本节课作业以及下节课 的预习作业。第四课时(上机练习)上机练习主要针对本章中需要重点掌握的知识点,以及在程序中容易出错 的内容进行练习,通过上机练习可以考察同学对知识点的掌握情况,对代码的 熟练程度。上机一:(考察知识点为:Fiddler的下载与安装、Fiddler捕获 S 页面的设置、Fiddler的基本使用)形式:单独完成题目:在计算机上下载安装Fiddler,要求如下:(1)从Fiddler官网下载相应的安装包,并安装Fiddler;(2)对Fiddler进行设置,使其能够捕获 S页面;