当前位置:首页 > 科技  > 软件

揭秘Python中的JSON数据格式与Requests模块

来源: 责编: 时间:2024-04-15 18:11:02 109观看
导读引言:JSON数据格式和Requests模块在现代编程中扮演着不可或缺的角色。JSON作为一种轻量级的数据交换格式,广泛应用于Web服务之间的数据传输;而Requests库则是Python中最流行的HTTP客户端库,用于发起HTTP请求并与服务器交

引言:

l2z28资讯网——每日最新资讯28at.com

JSON数据格式和Requests模块在现代编程中扮演着不可或缺的角色。JSON作为一种轻量级的数据交换格式,广泛应用于Web服务之间的数据传输;而Requests库则是Python中最流行的HTTP客户端库,用于发起HTTP请求并与服务器交互。今天,我们将通过10个精选的代码示例,一同深入了解这两个重要工具的使用。l2z28资讯网——每日最新资讯28at.com

1.创建并解析JSON数据

import json# 创建JSON数据data = {    "name": "John",    "age": 30,    "city": "New York"}json_data = json.dumps(data)  # 将Python对象转换为JSON字符串print(json_data)  # 输出:{"name": "John", "age": 30, "city": "New York"}# 解析JSON数据json_string = '{"name": "Jane", "age": 28, "city": "San Francisco"}'parsed_data = json.loads(json_string)  # 将JSON字符串转换为Python字典print(parsed_data)  # 输出:{'name': 'Jane', 'age': 28, 'city': 'San Francisco'}

2.使用Requests发送GET请求l2z28资讯网——每日最新资讯28at.com

import requestsresponse = requests.get('https://api.github.com')print(response.status_code)  # 输出HTTP状态码,如:200print(response.json())  # 输出响应体内容(假设响应是JSON格式)# 保存完整的响应信息with open('github_response.json', 'w') as f:    json.dump(response.json(), f)

3.发送带参数的GET请求

params = {'q': 'Python requests', 'sort': 'stars'}response = requests.get('https://api.github.com/search/repositories', params=params)repos = response.json()['items']for repo in repos[:5]:  # 打印前5个搜索结果    print(repo['full_name'])

4.发送POST请求

payload = {'key1': 'value1', 'key2': 'value2'}headers = {'Content-Type': 'application/json'}response = requests.post('http://httpbin.org/post', jsnotallow=payload, headers=headers)print(response.json())

5.设置超时时间

requests.get('http://example.com', timeout=5)  # 设置超时时间为5秒

6.处理Cookies

# 保存cookiesresponse = requests.get('http://example.com')cookies = response.cookies# 发送带有cookies的请求requests.get('http://example.com', cookies=cookies)

7.自定义HTTP头部信息

headers = {'User-Agent': 'My-Custom-UA'}response = requests.get('http://httpbin.org/headers', headers=headers)print(response.text)

8.下载文件

url = 'https://example.com/image.jpg'response = requests.get(url)# 写入本地文件with open('image.jpg', 'wb') as f:    f.write(response.content)

9.处理身份验证

from requests.auth import HTTPBasicAuthresponse = requests.get('https://example.com/api', auth=HTTPBasicAuth('username', 'password'))

10.重试机制

from requests.adapters import HTTPAdapterfrom requests.packages.urllib3.util.retry import Retry# 创建一个重试策略retry_strategy = Retry(    total=3,    status_forcelist=[429, 500, 502, 503, 504],    backoff_factor=1,)# 添加重试策略到适配器adapter = HTTPAdapter(max_retries=retry_strategy)# 将适配器添加到会话session = requests.Session()session.mount('http://', adapter)session.mount('https://', adapter)response = session.get('https://example.com')

结语:

通过上述10个Python中JSON数据格式与Requests模块的实战示例,相信您对它们的使用有了更为深入的理解。熟练掌握这两种工具将极大提升您在Web开发、API调用等方面的生产力。请持续关注我们的公众号,获取更多Python和其他编程主题的精彩内容!l2z28资讯网——每日最新资讯28at.com

本文链接://www.dmpip.com//www.dmpip.com/showinfo-26-83616-0.html揭秘Python中的JSON数据格式与Requests模块

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: C# 中的 HTTP 请求

下一篇: C++中的显式虚函数重载:override与final详解

标签:
  • 热门焦点
  • 红魔电竞平板评测:大屏幕硬实力

    红魔电竞平板评测:大屏幕硬实力

    前言:三年的疫情因为要上网课的原因激活了平板市场,如今网课的时代已经过去,大家的生活都恢复到了正轨,这也就意味着,真正考验平板电脑生存的环境来了。也就是面对着这种残酷的
  • 2023 年的 Node.js 生态系统

    2023 年的 Node.js 生态系统

    随着技术的不断演进和创新,Node.js 在 2023 年达到了一个新的高度。Node.js 拥有一个庞大的生态系统,可以帮助开发人员更快地实现复杂的应用。本文就来看看 Node.js 最新的生
  • K8S | Service服务发现

    K8S | Service服务发现

    一、背景在微服务架构中,这里以开发环境「Dev」为基础来描述,在K8S集群中通常会开放:路由网关、注册中心、配置中心等相关服务,可以被集群外部访问;图片对于测试「Tes」环境或者
  • 之家push系统迭代之路

    之家push系统迭代之路

    前言在这个信息爆炸的互联网时代,能够及时准确获取信息是当今社会要解决的关键问题之一。随着之家用户体量和内容规模的不断增大,传统的靠"主动拉"获取信息的方式已不能满足用
  • 每天一道面试题-CPU伪共享

    每天一道面试题-CPU伪共享

    前言:了不起:又到了每天一到面试题的时候了!学弟,最近学习的怎么样啊 了不起学弟:最近学习的还不错,每天都在学习,每天都在进步! 了不起:那你最近学习的什么呢? 了不起学弟:最近在学习C
  • 拼多多APP上线本地生活入口,群雄逐鹿万亿市场

    拼多多APP上线本地生活入口,群雄逐鹿万亿市场

    Tech星球(微信ID:tech618)文 | 陈桥辉 Tech星球独家获悉,拼多多在其APP内上线了“本地生活”入口,位置较深,位于首页的“充值中心”内,目前主要售卖美食相关的
  • OPPO、vivo、小米等国内厂商Q2在印度智能手机市场份额依旧高达55%

    OPPO、vivo、小米等国内厂商Q2在印度智能手机市场份额依旧高达55%

    7月20日消息,据外媒报道,研究机构的报告显示,在全球智能手机出货量同比仍在下滑的大背景下,印度这一有潜力的市场也未能幸免,出货量同比也有下滑,多家厂
  • “买真退假” 这种“羊毛”不能薅

    “买真退假” 这种“羊毛”不能薅

    □ 法治日报 记者 王春   □ 本报通讯员 胡佳丽  2020年初,还在上大学的小东加入了一个大学生兼职QQ群。群主“七王”在群里介绍一些刷单赚
  • 外交部:美方应停止在网络安全问题上不负责任地指责他国

    外交部:美方应停止在网络安全问题上不负责任地指责他国

      中国外交部今天(16日)举行例行记者会。会上,有记者问,美国情报官员称,他们正在阻拦来自中国以及其他国家的黑客获取相关科研成果。 中方对此有何评论?对此
Top
Baidu
map