Python响应知识点及网页基础.docx
《Python响应知识点及网页基础.docx》由会员分享,可在线阅读,更多相关《Python响应知识点及网页基础.docx(5页珍藏版)》请在冰豆网上搜索。
Python响应知识点及网页基础
Python响应知识点及网页基础
响应,由服务端返回给客户端,可以分为三部分:
响应状态码(ResponseStatusCode)、响应头(ResponseHeaders)和响应体(ResponseBody)。
1.响应状态码
响应状态码表示服务器的响应状态,如200代表服务器正常响应,404代表页面未找到,500代表服务器内部发生错误。
在爬虫中,我们可以根据状态码来判断服务器响应状态,如状态码为200,则证明成功返回数据,再进行进一步的处理,否则直接忽略。
表3列出了常见的错误代码及错误原因。
表3常见的错误代码及错误原因
2.响应头
响应头包含了服务器对请求的应答信息,如Content-Type、Server、Set-Cookie等。
下面简要说明一些常用的头信息。
▪Date:
标识响应产生的时间。
▪Last-Modified:
指定资源的最后修改时间。
▪Content-Encoding:
指定响应内容的编码。
▪Server:
包含服务器的信息,比如名称、版本号等。
▪Content-Type:
文档类型,指定返回的数据类型是什么,如text/html代表返回HTML文档,application/x-javascript则代表返回JavaScript文件,image/jpeg则代表返回图片。
▪Set-Cookie:
设置Cookies。
响应头中的Set-Cookie告诉浏览器需要将此内容放在Cookies中,下次请求携带Cookies请求。
▪Expires:
指定响应的过期时间,可以使代理服务器或浏览器将加载的内容更新到缓存中。
如果再次访问时,就可以直接从缓存中加载,降低服务器负载,缩短加载时间。
3.响应体
最重要的当属响应体的内容了。
响应的正文数据都在响应体中,比如请求网页时,它的响应体就是网页的HTML代码;请求一张图片时,它的响应体就是图片的二进制数据。
我们做爬虫请求网页后,要解析的内容就是响应体,如图8所示。
图8响应体内容
在浏览器开发者工具中点击Preview,就可以看到网页的源代码,也就是响应体的内容,它是解析的目标。
在做爬虫时,我们主要通过响应体得到网页的源代码、JSON数据等,然后从中做相应内容的提取。
总结
上面,我们了解了HTTP的基本原理,大概了解了访问网页时背后的请求和响应过程。
上面涉及的知识点需要好好掌握,因为分析网页请求时会经常用到。
网页基础
用浏览器访问网站时,页面各不相同,你有没有想过它为何会呈现这个样子呢?
下面,我们就来了解一下网页的基本组成、结构和节点等内容。
一、网页的组成
网页可以分为三大部分——HTML、CSS和JavaScript。
如果把网页比作一个人的话,HTML相当于骨架,JavaScript相当于肌肉,CSS相当于皮肤,三者结合起来才能形成一个完善的网页。
下面我们分别来介绍一下这三部分的功能。
1.HTML
HTML是用来描述网页的一种语言,其全称叫作HyperTextMarkupLanguage,即超文本标记语言。
网页包括文字、按钮、图片和视频等各种复杂的元素,其基础架构就是HTML。
不同类型的文字通过不同类型的标签来表示,如图片用img标签表示,视频用video标签表示,段落用p标签表示,它们之间的布局又常通过布局标签div嵌套组合而成,各种标签通过不同的排列和嵌套才形成了网页的框架。
在Chrome浏览器中打开XX,右击并选择“检查”项(或按F12键),打开开发者模式,这时在Elements选项卡中即可看到网页的源代码,如图9所示。
图9源代码
这就是HTML,整个网页就是由各种标签嵌套组合而成的。
这些标签定义的节点元素相互嵌套和组合形成了复杂的层次关系,就形成了网页的架构。
2.CSS
HTML定义了网页的结构,但是只有HTML页面的布局并不美观,可能只是简单的节点元素的排列,为了让网页看起来更好看一些,这里借助了CSS。
CSS,全称叫作CascadingStyleSheets,即层叠样式表。
“层叠”是指当在HTML中引用了数个样式文件,并且样式发生冲突时,浏览器能依据层叠顺序处理。
“样式”指网页中文字大小、颜色、元素间距、排列等格式。
CSS是目前唯一的网页页面排版样式标准,有了它的帮助,页面才会变得更为美观。
上面图9中右侧即为CSS,例如:
#head_wrapper.s-ps-islite.s-p-top{
position:
absolute;
bottom:
40px;
width:
100%;
height:
181px;
}
就是一个CSS样式。
大括号前面是一个CSS选择器。
此选择器的意思是首先选中id为head_wrapper且class为s-ps-islite的节点,然后再选中其内部的class为s-p-top的节点。
大括号内部写的就是一条条样式规则,例如position指定了这个元素的布局方式为绝对布局,bottom指定元素的下边距为40像素,width指定了宽度为100%占满父元素,height则指定了元素的高度。
也就是说,我们将位置、宽度、高度等样式配置统一写成这样的形式,然后用大括号括起来,接着在开头再加上CSS选择器,这就代表这个样式对CSS选择器选中的元素生效,元素就会根据此样式来展示了。
在网页中,一般会统一定义整个网页的样式规则,并写入CSS文件中(其后缀为css)。
在HTML中,只需要用link标签即可引入写好的CSS文件,这样整个页面就会变得美观、优雅。
3.JavaScript
JavaScript,简称JS,是一种脚本语言。
HTML和CSS配合使用,提供给用户的只是一种静态信息,缺乏交互性。
我们在网页里可能会看到一些交互和动画效果,如下载进度条、提示框、轮播图等,这通常就是JavaScript的功劳。
它的出现使得用户与信息之间不只是一种浏览与显示的关系,而是实现了一种实时、动态、交互的页面功能。
JavaScript通常也是以单独的文件形式加载的,后缀为js,在HTML中通过script标签即可引入,例如:
综上所述,HTML定义了网页的内容和结构,CSS描述了网页的布局,JavaScript定义了网页的行为。
二、网页的结构
我们首先用例子来感受一下HTML的基本结构。
新建一个文本文件,名称可以自取,后缀为html,内容如下:
DOCTYPEhtml>
ThisisaDemo
HelloWorld
Hello,thisisaparagraph.