Requests的使用例子

news/2024/11/17 16:04:29/

Requests库是一个Python HTTP客户端库,用于向Web服务器发送HTTP请求。它提供了简单而直观的API,使得向Web服务器发送HTTP请求变得非常容易。以下是Requests库的一些功能和示例:

1、发送HTTP GET请求

发送HTTP GET请求非常简单,只需使用requests.get()函数,并指定要发送请求的URL。例如,以下代码将发送一个GET请求,并打印响应内容:

import requestsresponse = requests.get('https://api.github.com')
print(response.text)

2、发送HTTP POST请求

发送HTTP POST请求也很容易,只需使用requests.post()函数,并指定要发送请求的URL和要发送的数据。例如,以下代码将向指定的URL发送一个包含JSON数据的POST请求,并打印响应内容:

import requestsurl = 'https://jsonplaceholder.typicode.com/posts'
data = {'title': 'foo', 'body': 'bar', 'userId': 1}
response = requests.post(url, json=data)print(response.text)

3、设置请求头

如果需要设置请求头,可以使用headers参数。例如,以下代码将发送一个包含自定义请求头的GET请求,并打印响应内容:

import requestsurl = 'https://api.github.com'
headers = {'User-Agent': 'My App'}
response = requests.get(url, headers=headers)print(response.text)

4、发送文件

使用Requests库,可以轻松地上传文件。只需使用files参数,将要上传的文件作为字典传递即可。以下是一个简单的示例:

import requestsurl = 'https://httpbin.org/post'
files = {'file': open('path/to/file', 'rb')}
response = requests.post(url, files=files)print(response.text)

5、处理Cookies和会话

使用Requests库,可以方便地处理Cookies和会话。只需使用cookies参数,将要发送的Cookies作为字典传递即可。以下是一个简单的示例:

import requestsurl = 'https://httpbin.org/cookies'
cookies = {'cookie1': 'value1', 'cookie2': 'value2'}
response = requests.get(url, cookies=cookies)print(response.text)

6、处理异常

使用Requests库,还可以方便地处理HTTP错误和其他异常。可以使用try-except语句捕获异常,并根据需要处理它们。以下是一个简单的示例:

import requestsurl = 'https://httpbin.org/status/404'
try:response = requests.get(url)response.raise_for_status()
except requests.exceptions.HTTPError as err:print(f'HTTP Error: {err}')
except requests.exceptions.Timeout as err:print(f'Request timed out: {err}')
except requests.exceptions.RequestException as err:print(f'Request failed: {err}')
else:print(response.text)

在上面的示例中,我们向一个不存在的URL发送了一个GET请求,会触发HTTPError异常。我们使用try-except语句捕获异常,并打印错误消息。


http://www.ppmy.cn/news/73359.html

相关文章

查看linux日志以及处理不能登录mysql的错误

要查看MariaDB的日志文件,可以使用以下命令: 1. 错误日志文件: bash sudo cat /var/log/mariadb/error.log 这将显示MariaDB的错误日志文件的内容。如果在默认位置找不到错误日志文件,您可以尝试查找其他可能的位置&#…

Activiti实战——Springboot整合Activiti

目录 一、Activiti数据库表名说明 二、Spring boot整合activiti 1. 创建springboot项目 2. 引入activiti依赖及项目依赖 3. 配置数据源 (1)创建数据源配置文件 (2)配置文件 4. 配置Acitviti引擎 5. 启动项目 三、Activiti…

DJ5-4 交换局域网(第一节课)

目录 一、局域网概述 1、LAN 的特点和分类 2、常见的网络拓扑结构 二、计算机与局域网的连接 三、局域网体系结构 四、链路层寻址地址 1、MAC 地址分配 2、MAC 地址识别 五、ARP 地址解析协议 1、ARP 地址解析协议 2、ARP:两个主机位于同一个局域网 3、…

Godot引擎 4.0 文档 - 入门介绍 - Godot 关键概念概述¶

本文为Google Translate英译中结果,DrGraph在此基础上加了一些校正。英文原版页面:Overview of Godots key concepts — Godot Engine (stable) documentation in English Godot 关键概念概述 每个游戏引擎都围绕您用来构建应用程序的抽象展开。在 Godo…

AUTOSAR知识点 之 COM (二):ISOLAR-AB的配置

目录 1、概述 2、ISOLAR-AB配置 2.1、ComGeneral 2.2、ComConfig 2.2.1、ComGwMapping 2.2.2、ComIPduGroups 2.2.3、ComIPdus

超越大数据的边界:Apache Flink实战解析【上进小菜猪大数据系列】

上进小菜猪,沈工大软件工程专业,爱好敲代码,持续输出干货。欢迎订阅专栏 Apache Flink是一种快速、可靠、可扩展的开源流处理框架,被广泛应用于大数据领域。本文将介绍Apache Flink的实战运用,包括其核心概念、架构设…

LeetCode346场周赛

2023.5.21LeetCode346场周赛 A. 删除子串后的字符串最小长度 思路 使用栈模拟&#xff0c;每当遇到AB和CD时出栈 代码 class Solution { public:int minLength(string s) {string res s.substr(0, 1);for (int i 1; i < s.size(); i ) {res s[i];int n res.size()…

选择性搜索算法(Selective Search )——SS算法

文章目录 一、前言二、object Detection VS object Recognition&#xff08;Selective Search的提出&#xff09;2.1object recognition与object detection的关系2.2滑动窗口方法的局限性2.3Selective search算法的提出 三、Selective Search算法3.1什么是Selective Search&…