requests请求库入门使用

news2024/11/28 8:24:07

requests 库是一个功能强大且易于使用的 HTTP 请求库,适用于各种网络请求任务。它简化了 HTTP 请求的发送过程,并提供了丰富的功能来处理各种网络请求和响应。 

1.安装

 首先,你需要安装 requests 库。如果你还没有安装,可以使用 pip 安装:

2.请求 

安装完毕后先导入模块:

import requests

导入模块之后我们可以使用requests请求库方法。

请求方法

方法描述
delete(urlargs)发送 DELETE 请求到指定 url
get(urlparams, args)发送 GET 请求到指定 url
head(urlargs)发送 HEAD 请求到指定 url
patch(urldata, args)发送 PATCH 请求到指定 url
post(urldata, json, args)发送 POST 请求到指定 url
put(urldata, args)发送 PUT 请求到指定 url
request(methodurlargs)向指定的 url 发送指定的请求方法

get请求

图中可以看到,我们要请求csdn网址,需要用到的是 get 请求方式 ,且状态码为 200 时表示请求成功。

import requests

url = "http://www.csdn.net/"

res = requests.get(url)
print(res.status_code)

返回结果是 200 ,请求成功。

还可以给 get 请求添加参数 params、headers。

import requests

url = "http://www.csdn.net/"

params = {
    "pn": 12,
    "size": 20
}

headers = {
    "User-Agent": 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 '
                  'Safari/537.36'
}

res = requests.get(url, params=params, headers=headers)
print(res.status_code)

返回结果为 200 ,请求成功。

post请求

import requests

x = requests.post('https://www.runoob.com/try/ajax/demo_post.php')

print(x.text)


# 输出结果如下:

# <p style='color:red;'>本内容是使用 POST 方法请求的。</p><p style='color:red;'>请求时间:
# 2022-05-26 17:30:47</p>

post 请求也可以携带参数

import requests

myobj = {'fname': 'RUNOOB','lname': 'Boy'}

x = requests.post('https://www.runoob.com/try/ajax/demo_post2.php', data = myobj)

print(x.text)

# 输出结果如下:

# <p style='color:red;'>你好,RUNOOB Boy,今天过得怎么样?</p>

请求响应

每次调用 requests 请求之后,会返回一个 response 对象,该对象包含了具体的响应信息,如状态码、响应头、响应内容等:

print(response.status_code) # 获取响应状态码

print(response.headers) # 获取响应头

print(response.content) # 获取响应内容

更多响应信息如下:

属性或方法说明
apparent_encoding编码方式
close()关闭与服务器的连接
content返回响应的内容,以字节为单位
cookies返回一个 CookieJar 对象,包含了从服务器发回的 cookie
elapsed返回一个 timedelta 对象,包含了从发送请求到响应到达之间经过的时间量,可以用于测试响应速度。比如 r.elapsed.microseconds 表示响应到达需要多少微秒。
encoding解码 r.text 的编码方式
headers返回响应头,字典格式
history返回包含请求历史的响应对象列表(url)
is_permanent_redirect如果响应是永久重定向的 url,则返回 True,否则返回 False
is_redirect如果响应被重定向,则返回 True,否则返回 False
iter_content()迭代响应
iter_lines()迭代响应的行
json()返回结果的 JSON 对象 (结果需要以 JSON 格式编写的,否则会引发错误)
links返回响应的解析头链接
next返回重定向链中下一个请求的 PreparedRequest 对象
ok检查 "status_code" 的值,如果小于400,则返回 True,如果不小于 400,则返回 False
raise_for_status()如果发生错误,方法返回一个 HTTPError 对象
reason响应状态的描述,比如 "Not Found" 或 "OK"
request返回请求此响应的请求对象
status_code返回 http 的状态码,比如 404 和 200(200 是 OK,404 是 Not Found)
text返回响应的内容,unicode 类型数据
url返回响应的 URL

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2060358.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

网优学习干货:2.6G仿真操作(1)

2.6G工程建立——整体仿真过程 针对覆盖仿真、速率仿真及蒙特卡洛仿真的说明 覆盖仿真&#xff1a;覆盖仿真主要用于评估网络覆盖性能。基于MassiveMIMO天线、射线传模或经验传模进行覆盖预测&#xff0c;计算链路损耗后&#xff0c;基于栅格分析估算小区覆盖预测的各项指标&am…

前端不同项目使用不同的node版本(Volta管理切换)

前端不同项目使用不同的node版本(Volta管理切换) 使用volta自动切换前端项目的node版本&#xff0c; 每个不同的前端项目&#xff0c;可以使用不同的node版本。Volta这个工具&#xff0c;它允许用户方便地安装、切换和管理不同版本的Node.js&#xff0c;避免了为每个项目手动配…

QT6聊天室项目 核心类与主窗口设计逻辑分析

核心类 核心类设计逻辑 数据结构设计&#xff08;data.h&#xff09; 用户信息 用户ID用户网名用户个人签名用户手机号码用户头像聊天会话信息 会话编号会话名称&#xff08;单聊则是对方网名&#xff0c;群聊则是群名&#xff09;最新消息会话图标&#xff08;单聊对方头像&a…

sortable中el-table拖拽及点击箭头上下移动row

效果 安装 npm install sortablejs --save 引入 import Sortable from "sortablejs"; <el-table:data"tableBody"borderref"tableRef":stripe"true":key"tableKey"><el-table-column type"index" la…

driver.find_element 找不到元素的大坑

前端使用element框架。 登录进去使用开发人员工具能看到元素&#xff0c;复制xpath使用find_element死活找不到。 其中一次复制的xpath 注意红色部分: #先点击一下输入框 driver.find_element(By.XPATH,/html/body/div[1]/section/section/section/main/div/div[1]/div/form/…

迎接 Apple Intelligence.一:首次啟用

年 Apple 各平台的重點新功能&#xff0c;相信非 Apple Intelligence 莫屬。Apple 將會將人工智能整合到 iOS 18、iPadOS 18 和 macOS Squoia。在機械學習和大型語言模型加持下&#xff0c;預計 Siri 的對答會更加自然流暢&#xff0c;而且能直接提供答案&#xff0c;而不像過去…

作业8/21

client cpp #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget), socket(new QTcpSocket(this)) {ui->setupUi(this); // 设置 UI 界面// 控件初始状态设置为禁用&#xff0c;防止未连接…

储能系统---德业、禾迈、昱能产品布局及对比

一、公司介绍 德业、昱能、禾迈作为微逆行业的佼佼者&#xff0c;同样代表了中国制造行业的三种技术形态。 德业&#xff1a;代表传统制造行业&#xff0c;转型电力电子领域的代表。 昱能&#xff1a;代表海归人员回国创业&#xff0c;致力于技术本土化的代表。 禾迈&#…

socket 验证字符串是否是有效ip地址

import socketdef is_valid_ip(ip):try:# 尝试将字符串解析为IP地址socket.inet_aton(ip)return Trueexcept socket.error:return False# 测试 print(is_valid_ip("192.168.1.1")) # True print(is_valid_ip("256.256.256.256")) # False print(is_valid…

计算机存储原理——基础

文章目录 存储介质简介1. 光介质存储2. 磁介质存储3. flash(闪存) 硬盘存储原理磁盘组件磁盘是如何存储文件的磁盘的性能 存储接口与存储协议接口类型SCSISCSI的寻址方式windows下查看SCSI寻址 接口与总线与协议的对应关系cpu是如何控制存储的 文件系统常见的文件系统文件系统中…

《数据结构》顺序表+算法代码+动画演示-C语言版

目录 顺序表概念 顺序表初始化 顺序表销毁 顺序表尾插 顺序表尾删 顺序表头删 顺序表头插 顺序表pos位置插入 顺序表pos位置删除 顺序表全部代码如下&#xff1a; 顺序表概念 顺序表是用一段 物理地址连续 的存储单元依次存储数据元素的线性结构&#xff0c;一般情况下…

「OC」CAShapeLayer和UIBezierPath —— 抽屉视图之中圆角cell的实现

「OC」CAShapeLayer和UIBezierPath —— 抽屉视图之中圆角cell的实现 文章目录 「OC」CAShapeLayer和UIBezierPath —— 抽屉视图之中圆角cell的实现前言CALayer的子类CAShapeLayerpath 贝塞尔曲线应用实践参考资料 前言 上次我们学习了CALayer的相关知识 &#xff0c;但好像忘…

2024计算机软考报名流程(电脑报名)

1.24年下半年软考报名时间&#xff0c;各省报名时间不一样&#xff0c; 报名时间大概集中在&#xff1a;24年8月19日&#xff5e;24年9月15日&#xff1b; 报名网站&#xff1a;中国计算机技术职业资格网&#xff1b; 广东&#xff1a;2024年8月21日9:00至29日17:00 安徽&#…

全面调研:19类AI Agent框架的对比与分析

代理&#xff08;Agent&#xff09;指能自主感知环境并采取行动实现目标的智能体&#xff0c;即AI作为一个人或一个组织的代表&#xff0c;进行某种特定行为和交易&#xff0c;降低一个人或组织的工作复杂程度&#xff0c;减少工作量和沟通成本。 背景 目前&#xff0c;我们在…

监听页面滚动到某个元素 设置入场动画

mounted() {this.eventScroll()}, eventScroll() {// 选择你想要监听的元素const targetLogo document.getElementById(logoanimation);// 创建并配置IntersectionObserverconst observer new IntersectionObserver((entries) > {entries.forEach(entry > {if (entry.…

回收站的文件删除了怎么恢复?4个技巧轻松找回文件!

在日常使用电脑的过程中&#xff0c;回收站作为我们删除文件的临时存放地&#xff0c;扮演着重要的角色。然而&#xff0c;有时我们可能会不小心从回收站中删除了重要文件&#xff0c;导致数据丢失。面对这种情况&#xff0c;许多用户会感到焦虑和无助。但别担心&#xff0c;本…

基于Spark实现大数据量的Node2Vec

基于Spark实现大数据量的Node2Vec Node2Vec 是一种基于图的学习算法&#xff0c;用于生成图中节点的低维度、高质量的向量表示。这种算法基于 word2vec 模型&#xff0c;将自然语言处理中的词嵌入技术应用于图结构的节点&#xff0c;以捕捉节点之间的复杂关系。Node2Vec 特别强…

glibc 2.24 下 IO_FILE 的利用

文章目录 glibc 2.24 下 IO_FILE 的利用介绍&#xff1a;新的利用技术fileno 与缓冲区的相关利用实例&#xff1a;1. _IO_str_jumps -> overflow实例&#xff1a; 2. _IO_str_jumps -> finish实例: 最后拓展一下上一篇博客house of orange题目的做法: glibc 2.24 下 IO_F…

6.4K+ Star!一个强大的本地知识库问答系统,支持多格式文件和跨语言检索,为企业提供高效、安全的数据洞察……

https://github.com/netease-youdao/QAnything 【阅读原文】跳转Github项目 转自AIGC创想者 项目简介 QAnything 是一个基于本地知识库的问答系统&#xff0c;它能够理解和回答基于任何类型文件的问题。 QAnything支持的文件格式非常广泛&#xff0c;包括PDF、Word、PPT、XL…

【GH】【EXCEL】P6: Shapes

文章目录 componentslinepicture components line picture Picture A Picture object Input parameters: Worksheet (Generic Data) A Worksheet, Workbook, Range Object, Excel Application, or Text Worksheet NameName (Text) An optional object nameLocation (Point) A p…