requests库方法的解析

requests库方法的解析


Python 内置了 requests 模块,该模块主要用来发 送 HTTP 请求

如:

# 导入 requests 包
import requests

# 发送请求(get请求)
res= requests.get('https://www.baidu.com/')

# 返回网页内容(文本格式)
print(res.text)

requests库
可以分为三个部分
请求方法
请求参数
响应解析

请求方法

  • requests.get(url, params, args) 发送 GET 请求到指定 url

  • requests.post(url, data, json, args) 发送 POST 请求到指定 url

  • requests.put(url, data, args) 发送 PUT 请求到指定

  • requests.delete(url, args) 发送 DELETE 请求到指定

  • request(method, url, args) 向指定的 url 发送指定的请求方法

  • requests.session(): 用于保持会话(session)

请求参数

  • url: 字符串格式,参数也可以直接写到url中

  • params:url参数,字典格式

  • data: 请求数据,字典或字符串格式

  • headers: 请求头,字典格式

  • cookies: 字典格式,可以通过携带cookies绕过登录

  • files: 字典格式,用于混合表单(form-data)中上传文件

  • auth: Basic Auth授权,数组格式 auth=(user,password)

  • timeout: 超时时间(防止请求一直没有响应,最长等待时间),数字格式,单位为秒

  • args为其他参数

例:

# 导入 requests 包
import requests

# 发送请求
url=''https://www.runoob.com/''
res= requests.get(url=url)

# 返回网页内容
print(res.text)

响应解析

  • requests.status_code: 返回 http 的状态码,比如 404 和 200(200 是 OK,404 是 Not Found)
  • requests.reason: 响应状态的描述,比如 “Not Found” 或 “OK”
  • requests.text:响应的文本格式,unicode 类型数据
  • requests.content: 响应的二进制格式
  • requests.encoding: r.text解码格式,可以通过修改requests…encoding='utf-8’来解决一部分中文乱码问题
  • requests.apparent_encoding:真实编码,由chardet库提供的明显编码
  • requests.json(): (注意,有括号)返回结果的 JSON 对象(字典)格式,慎用!如果响应文本不是合法的json文本,可能报错
  • requests.headers: 返回响应头,字典格式
  • requests.cookies:返回 响应的cookieJar对象,可以通过 requests.cookies.get(key)来获取响应cookies中某个key对应的值
  • requests.url: 返回响应的 URL
  • requests.next: 返回重定向链中下一个请求的 PreparedRequest 对象
  • requests.ok: 检查 “status_code” 的值,如果小于400,则返回 True,如果不小于 400,则返回 False
  • requests. request: 返回请求此响应的请求对象
  • requests. raise_for_status(): 如果发生错误,方法返回一个 HTTPError 对象
  • requests. links: 返回响应的解析头链接
  • requests. close(): 关闭与服务器的连接
  • requests. elapsed: 返回一个 timedelta 对象,包含了从发送请求到响应到达之间经过的时间量,可以用于测试响应速度。比如 r.elapsed.microseconds 表示响应到达需要多少微秒。
  • requests. history:返回包含请求历史的响应对象列表(url)
  • requests. is_permanent_redirect:如果响应是永久重定向的 url,则返回 True,否则返回 False
  • requests. is_redirect:如果响应被重定向,则返回 True,否则返回 False
  • requests. iter_content():迭代响应
  • requests. iter_lines():迭代响应的行

例:

# 导入 requests 包
import requests

# 发送请求
res= requests.get('https://www.baidu.com/')

# 返回 http 的状态码
print(res.status_code)

# 响应状态的描述
print(res.reason)

# 返回编码
print(res.apparent_encoding)

(非作者允许,严禁转载)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值