request模块的使用

Requests库的基础使用

Get/Post请求

Get请求

 requests.get('http://www.baidu.com',参数)		

Post请求

 requests.post('http://www.baidu.com',参数)

0x01 .响应体内容

用法 解释
r.encoding 获取当前编码
r.encoding = ‘utf-8’ 设置编码
r.text 以encoding解析返回内容。字符串方式的响应体,会根据响应头部的字符编码进行解码
r.content 以字节(二进制)返回。字节方式的响应体会自动为你解码gzip和deflate压缩
r.headers 以字典对象存储服务器响应头,但是字典比较特殊,字典键不区分大小写,若键不存在,则返回None
r.status_code 响应状态码 特殊方法
r.json() Requests 中内置的json解码器,以json形式返回内容,确保json格式,不然解析出错会抛异常
r.raise_for_status() 失败请求(非200响应) 抛出异常

0x02. 进阶应用

1.定制header/cookies 内容

header = {'user-agent':'User-Agent: Mozilla/5.0'}
cookie = {'key':'值'}
r.request.get/post('https://www.baidu.com',headers=header,cookies=cookie)

2.设置http代理

proxies = {'http':'120.79.212.174','https':'60.167.20.246'}
baidu = requests.get('https://www.baidu.com',proxies=proxies)

如果需要用户名密码验证

proxies = {'http':'username:password@120.79.212.174'}
baidu = requests.get('https://www.baidu.com',proxies=proxies)

3.基础身份认证

import requests
from requests.auth import HTTPBasicAuth

url = 'https://qiyuanxuetang.net/hidden-basic-auth/user/passwd'
r = requests.get(url=url,auth=HTTPBasicAuth('user','passwd')
# r = requests.get(url=url,auth=('user','passwd') //简写
print(r.json())

0x03.推荐阅读文章

  1. request模块的深入和使用
  2. request基本使用
    也可以看看官方解释
posted @ 2021-03-01 13:10  0X7e  阅读(70)  评论(0编辑  收藏  举报