-
浏览器的请求
-
url
- 在控制器中点击查看,点击到network
- URL= 请求协议+网站的域名+资源路径+参数
-
HTTP 和 HTTPS
-
HTTP:超文本传输协议
- 以明文的形式传输
- 效率更高,但是不安全
-
HTTPS:HTTP+SSL(安全套接字层)
- 传输之前数据先加密,之后解密获取内容
- 效率更低,但是安全
-
get和post请求的区别
- get请求没有请求体,post有,get请求是吧数据放到URL地址中
- post请求常用于登录注册
- post请求携带的数据量比get请求大,多,常用于传输大文本的时候
-
HTTP协议之请求
- 1、请求行
- 2、请求头
- User-Agent:用户代理:对方服务器能欧通过user_agent知道当前请求对方资源的是什么浏览器
- 如果我们需要模拟手机版的浏览器发送请求,对应的,就需要吧user_agent改成手机版
- Cookie:用来存储用户信息 的,每次请求会被携带上发送给对方的浏览器。
- 要获取登录后才能访问的页面
-对方的服务器会通过cookie来判断是我们还是一个爬虫
- 3、请求体
- 携带数据
- get请求没有
- post请求有
-
HTTP协议之响应
- 1、响应头
- set-Cookie:对方服务器通过该字段设置cookie到本地
- 2、响应体
- 1、响应头
https://blog.csdn.net/cysion1989/article/details/78349779
-
安装request模块
- pip install request
-
发送get,post,获取响应
- response = requests.get(url) #发送get请求,请求URL地址对应的响应
- response = requests.post(url,data = {请求字典参数}) #发送post请求
- getData = requests.get(url,headers = parData)
- print(getData.url) #发送请求的URL地址
- print(getData.request.url) #响应getData的URL地址
- print(getData.request.headers) #发送请求的请求头
- print(getData.headers) #响应请求
-
读取获取到的数据
- response.text(该方法经常会出现乱码,需要标识编码格式)
- response.content(该方式的中文需要解码)
- response.content.decode() 在Python3中,默认是utf-8的编码格式。
-
获取网页源码的正确打开方式(以下三种方式一定能够获取到网页的正确解码之后的字符串)
- 1、response.content.decode()
- 2、response.content.decode(‘gbk’)
- 3、response.text
网友评论