python3网络爬虫——day1-1

网络爬虫教材:

python3 网络爬虫开发实战——崔庆才

直接从第二章开始学习。

2.1 HTTP基本原理

URI:Uniform Resource Identifier,统一资源标识符

URL:Uniform Resource Locator ,统一资源定位符

URN:Uniform Resource Name,统一资源名称

URI包含URL和URN

参考博客https://blog.csdn.net/simplebam/article/details/72644094

HTTP:Hyper Text Transfer Protocol 超文本传输协议

HTTPS:Hyper Text Transfer Protocol over Secure Socket Layer,HTTPS安全版,即HTTP下加入SSL层。

HTTP请求过程

浏览器向服务器发送请求,服务器收到请求后进行解析处理,返回对应的响应。

请求:分为四部分,请求方法(Request Method),请求网址(Request URL),请求头(Request Headers)、请求体(Request Body)。

请求方法:GET 和POST。GET请求中的参数包含在URL里面,数据可以在URL中看到,而POST请求的URL不会包含这些数据,数据都是通过表单形式传输的,会包含在请求体中。GET请求提交的数据最多只有1024字节,而POST方式没有限制。

参考http://www.runoob.com/http/http-methods.html

请求网址:唯一确定我们想要的资源

请求头:用来说明服务器要使用的附加信息

        Referer:此内容用来标识这个请求是从哪个页面发过来的,服务器可以拿到这一信息并做相应处理,如做来源统计、防盗链处理等

        User-Agent:简称UA,它是一个特殊的字符串头,可以使服务器识别客户使用的操作系统及版本、浏览器及版本信息。在做爬虫时加上此信息,可以伪装成浏览器;如果不加,很可能会被识别出为爬虫。

        Content-Type:也叫互联网媒体类型(Internet Media Type)或者MIME类型,在HTTP协议消息头中,它用来表示具体请求中的媒体类型信息。参考http://tool.oschina.net/commons

请求体:请求体一般承载的内容是POST请求中的表单数据,而对于GET请求,请求体则为空。 

Content-Type和POST提交数据方式的关系
Content-Type 提交数据的方式
application/x-www-form-urlencoded 表单数据
multipart/form-data 表达文件上传
application/json 序列化JSON数据
text/xml XML数据

响应:响应状态码(Response Status Code),响应头(Response Headers)和响应体(Response Body)

1、响应状态码:表示服务器的响应状态,如200代表服务器正常响应,404代表页面未找到,500代表服务器内部发生错误。在爬虫中,如果状态码为200,则证明成功返回数据,再进行进一步的处理,否则直接忽略。

2、响应头:包含了服务器对请求的应答信息。

              Data:标识响应产生的时间

             Expires:指定响应的过期时间,可以使代理服务器或浏览器将加载内容更新到缓存中。如果再次访问时,就可以直接从缓存中加载,降低服务器负载,缩短加载时间。

3、响应体:响应体的正文数据都在响应体中。我们做爬虫请求网页后,要解析的内容就是响应体。

猜你喜欢

转载自blog.csdn.net/weixin_41124748/article/details/82857828
今日推荐