欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

爬虫基本流程Request和Response的介绍

程序员文章站 2022-03-18 20:25:12
...

基于python的爬虫想要从网站上获取数据,就是从request到response的过程。我们通过伪装浏览器从而向服务器发出Request请求,服务器则会在接受信息后,作出Response回应。

爬虫基本流程Request和Response的介绍


在上一篇我们讲解了什么是爬虫和爬虫的基本流程的介绍,今天给大家带来的就是对基本流程的详细介绍,什么是Request和Response。

Request

1.什么是Request?

浏览器发送信息给该网址所在的服务器,这个过程就叫做HTTP Request。

2.Request中包含什么?

请求方式:请求方式的主要类型是GET,POST两种,另外还有HEAD、PUT、DELETE等。GET 请求的请求参数会显示在URL链接的后面,比如我们打开百度,搜索“图片”,我们会看到请求的URL链接为https://www.baidu.com/s?wd=图片。而 POST 请求的请求参数会存放在Request内,并不会出现在 URL 链接的后面,比如我们登录知乎,输入用户名和密码,我们会看到浏览器开发者工具的Network页,Request请求有Form Data的键值对信息,那里就存放了我们的登录信息,有利于保护我们的账户信息安全;请求 URL:URL 全称是统一资源定位符,也就是我们说的网址。比如一张图片,一个音乐文件,一个网页文档等都可以用唯一URL来确定,它包含的信息指出文件的位置以及浏览器应该怎么去处理它;请求头(Request Headers):请求头包含请求时的头部信息,如User-Agent(指定浏览器的请求头),Host,Cookies等信息;请求体:请求体是请求是额外携带的数据,比如登录表单提交的登录信息数据。


Response

1.什么是Response?

服务器收到浏览器发送的信息后,能够根据浏览器发送信息的内容,做出相应的处理,然后把消息回传给浏览器,这个过程就叫做HTTP Response。

2.Response中包含什么?

响应状态:有多种响应状态,比如200代表成功,301 跳转页面,404 表示找不到页面,502 表示服务器错误;响应头(Response Headers):比如内容类型,内容长度,服务器信息,设置Cookie等;响应体:响应体最主要的部分,包含了请求资源的内容,比如网页 HTML 代码,图片二进制数据等。

简单演示

import requests # 导入requests库,需要安装
 
# 模拟成浏览器访问的头
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36'}
resp = requests.get('https://www.baidu.com',headers=headers)
print(resp.text) # 打印出网页源代码
print(resp.status_code) # 打印出状态码

运行成功后可以看到打印出来的 html 源代码和 200 状态码了。这就基本上实现了爬虫的Request和Response的过程。

以上就是爬虫基本流程Request和Response的介绍的详细内容,更多请关注其它相关文章!