You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python提取JSON中population数值及json.loads解析报错解决方案

错误原因
  • 目标接口返回的是纯JSON格式数据,你使用BeautifulSoup(HTML解析工具)处理属于多余操作,反而可能引入多余字符
  • 你将接口返回的bytes类型直接转为str,会在字符串首尾生成b'和'两个多余标识,导致JSON解析器无法识别合法结构
  • 你在JSON解析后执行的[:-1][2:]操作逻辑错误,接口返回的是匹配国家的数组结构,直接取下标为0的元素即可拿到目标国家数据
修正后可运行代码
import urllib.request
import json

country = input("Country: ")
link = 'https://restcountries.com/v3.1/name/' + country
# 读取接口返回的字节流并解码为正常字符串
response_content = urllib.request.urlopen(link).read().decode('utf-8')
# 解析JSON后取第一个匹配的国家数据
country_info = json.loads(response_content)[0]
population_number = country_info['population']
print(population_number)
# 可自行运行验证类型为int
print(type(population_number))

内容的提问来源于stack exchange,提问作者נתנאל פרץ

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 23:36:03