Python提取JSON文件中的指定数据并保存在CSV或Excel表格文件内

这篇具有很好参考价值的文章主要介绍了Python提取JSON文件中的指定数据并保存在CSV或Excel表格文件内。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  本文介绍基于Python语言,读取JSON格式的数据,提取其中的指定内容,并将提取到的数据保存到.csv格式或.xlsx格式的表格文件中的方法。

  JSON格式的数据在数据信息交换过程中经常使用,但是相对而言并不直观;因此,有时我们希望将JSON格式的数据转换为Excel表格文件数据;这里就介绍一下基于Python语言,将JSON数据转换为.csv格式与.xlsx格式数据的方法。

  首先,来看一下我们的需求。我们现在基于Postman软件,获得了某一个网站中,以JSON格式记录的大量数据,其中部分数据如下图所示(这里是大量数据样本中的1条样本)。这里关于Postman获取网站数据的方法,大家如果有需要,可以参考文章Postman软件基本用法:浏览器复制请求信息并导入到软件从而测试、发送请求(https://blog.csdn.net/zhebushibiaoshifu/article/details/132383361)。

Python提取JSON文件中的指定数据并保存在CSV或Excel表格文件内,Python学习与应用,计算机高效操作,Python,JSON,csv,xlsx,Excel,格式转换,数据格式转换

  我们现在希望实现的是,将上述JSON数据中的文字部分(也就是有价值的信息部分)提取出来,并保存在一个Excel表格文件中;其中,不同的就是不同的信息属性,不同的就是不同的样本

  明确了需求,我们就可以开始撰写代码。这里需要注意,在本文代码中需要用到Pythonjson库,关于这一个库的配置,大家可以参考文章Mac系统Anaconda环境配置Python的json库(https://blog.csdn.net/zhebushibiaoshifu/article/details/132565661)。

  首先,介绍将JSON格式数据转换为.csv文件数据的代码,具体如下。

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Tue Aug 29 10:22:23 2023

@author: fkxxgis
"""

import json
import csv

with open('/Users/didi/Documents/response.json', 'r') as f:
    data = json.load(f)

with open('/Users/didi/Documents/Data_All.csv', 'w', newline='', encoding='utf-8') as csvfile:
    csvwriter = csv.writer(csvfile)
    
    header = ["xkzh", "qymc", "gmpZsh", "cym", "shren", "shrq"]
    csvwriter.writerow(header)
    
    for row in data['rows']:
        xkzh = row['xkzh']
        qymc = row['qymc']
        gmpZsh = row['gmpZsh']
        cym = row['cym']
        shren = row['shren']
        shrq = row['shrq']
        
        csvwriter.writerow([xkzh, qymc, gmpZsh, cym, shren, shrq])

  首先需要说明,上述代码在执行后,我打开新建的.csv格式文件,会出现中文字符乱码的情况,如下图所示。

Python提取JSON文件中的指定数据并保存在CSV或Excel表格文件内,Python学习与应用,计算机高效操作,Python,JSON,csv,xlsx,Excel,格式转换,数据格式转换

  但是用本文接下来的导出为.xlsx格式文件的代码就不会有这个问题,所以我当时没有进一步研究乱码出现的原因,就直接用了后续的代码了。如果大家感兴趣,可以对上述代码加以进一步研究。

  上述代码的具体含义如下。首先,我们通过with open('/Users/didi/Documents/response.json', 'r') as f:,打开名为response.json的文件(也就是存储了我们JSON格式数据的文件),并将其赋值给变量f;这里的'r'表示以只读模式打开文件。随后,代码data = json.load(f)使用json.load()函数加载JSON文件中的数据,并将其存储在变量data中。

  接下来,打开名为Data_All.csv的文件,并将其赋值给变量csvfile'w'表示以写入模式打开文件。newline=''encoding='utf-8'用于设置写入.csv文件时的换行和编码方式。随后,csvwriter = csv.writer(csvfile)表示创建一个.csv写入器,将数据写入csvfile文件。

  其次,我们即可定义.csv文件的表头(列名),以列表形式存储在header变量中;随后,通过csvwriter.writerow(header)将表头写入.csv文件。

  紧接着,对于data中的每一行数据,执行以下操作——xkzh = row['xkzh']就表示从当前行的字典中提取键为xkzh的值,并将其赋值给变量xkzh;接下来的其他几行也是这个意思。最后,我们将提取的数据以列表的形式写入.csv文件的一行。

  接下来,我们介绍将JSON格式数据转换为.xlsx文件数据的代码,具体如下。

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Tue Aug 29 10:42:26 2023

@author: fkxxgis
"""

import json
from openpyxl import Workbook

with open('/Users/didi/Documents/Veterinary/response_2.json', 'r') as f:
    data = json.load(f)

wb = Workbook()
ws = wb.active

header = ["qymc", "tym", "gg", "spm", "pzwh", "zxbz", "pzrq", "yxq", "sxyy", "bgqk"]
ws.append(header)

for row in data['rows']:
    qymc = row['qymc']
    tym = row['tym']
    gg = row['gg']
    spm = row['spm']
    pzwh = row['pzwh']
    zxbz = row['zxbz']
    pzrq = row['pzrq']
    yxq = row['yxq']
    sxyy = row['sxyy']
    bgqk = row['bgqk']
    
    ws.append([qymc, tym, gg, spm, pzwh, zxbz, pzrq, yxq, sxyy, bgqk])

wb.save('/Users/didi/Documents/Veterinary/Result_2.xlsx')

  上述代码的含义也比较简单。

  首先,我们打开名为response_2.json的文件,并将其赋值给变量f'r'表示以只读模式打开文件。随后的data = json.load(f)表示使用json.load()函数加载JSON文件中的数据,并将其存储在变量data中。

  接下来,创建一个新的Excel工作簿,将其赋值给变量wb;随后,获取工作簿的活动工作表,并将其赋值给变量ws

  紧接着,我们定义Excel文件的表头(列名),以列表形式存储在header变量中,并将表头写入Excel文件的第一行。随后,对于data中的每一行数据(假设每一行都是一个字典),执行以下操作——从当前行的字典中提取特定字段的值,并将它们分别赋值给对应的变量。接下来,我们将提取的数据以列表的形式写入Excel文件的一行。

  最后,即可将Excel工作簿保存为名为Result_2.xlsx的文件。

  运行上述代码,我们即可在Result_2.xlsx文件中看到提取到的数据,其中每一行就是一个样本,每一列表示一种属性,且没有出现乱码的情况。如下图所示。

Python提取JSON文件中的指定数据并保存在CSV或Excel表格文件内,Python学习与应用,计算机高效操作,Python,JSON,csv,xlsx,Excel,格式转换,数据格式转换

  至此,大功告成。

欢迎关注:疯狂学习GIS文章来源地址https://www.toymoban.com/news/detail-681565.html

到了这里,关于Python提取JSON文件中的指定数据并保存在CSV或Excel表格文件内的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • python爬虫——保存数据为.csv文件

    python爬虫——保存数据为.csv文件

    1、导包 2、创建或打开文件,设置文件形式 3、设置列名 4、创建DictWriter对象 5、写入表头 6、数据写入 使用writerow方法写入行数据        

    2024年02月11日
    浏览(33)
  • python采集数据保存csv, 文件内容乱码了怎么解决?

    如果你的 Python 程序采集到的数据在保存成 CSV 格式的文件时出现了乱码,那么可尝试以下解决方法: 1. 在打开 CSV 文件时指定编码方式 你可以使用 Python 中的 open() 函数打开 CSV 文件,并在 open() 函数中指定文件编码方式为 CSV 文件原始编码方式。如果 CSV 文件原始编码方式为

    2024年02月16日
    浏览(8)
  • chatgpt赋能python:Python如何保存数据到CSV文件中

    作为一门广泛应用于数据分析和机器学习的编程语言,Python提供了许多方法来处理和保存数据。其中之一是将数据保存到CSV文件中。本篇文章将介绍如何使用Python保存数据到CSV文件,在此过程中,我们会提到一些有用的Python库和技巧。 CSV是“逗号分隔值”(Comma-Separated Valu

    2024年02月10日
    浏览(6)
  • Python读取指定的TXT文本文件并从中提取指定数据的方法

    Python读取指定的TXT文本文件并从中提取指定数据的方法

      本文介绍基于 Python 语言,遍历文件夹并从中找到文件名称符合我们需求的多个 .txt 格式文本文件,并从上述 每一个文本文件 中,找到 我们需要的指定数据 ,最后得到 所有文本文件中 我们 需要的数据的合集 的方法。   首先,我们来明确一下本文的具体需求。现有

    2024年02月14日
    浏览(30)
  • Python 自动化指南(繁琐工作自动化)第二版:十六、使用 CSV 文件和 JSON 数据

    Python 自动化指南(繁琐工作自动化)第二版:十六、使用 CSV 文件和 JSON 数据

    原文:https://automatetheboringstuff.com/2e/chapter16/ 在第 15 章,你学习了如何从 PDF 和 Word 文档中提取文本。这些文件是二进制格式的,需要特殊的 Python 模块来访问它们的数据。另一方面,CSV 和 JSON 文件只是纯文本文件。您可以在文本编辑器(如 Mu)中查看它们。但是 Python 还附带

    2023年04月08日
    浏览(227)
  • python 提取csv文件某几列

    在 Python 中,可以使用 csv 模块来读取 CSV 文件并提取其中的某几列。 下面是一个简单的示例,展示了如何提取 CSV 文件中的第一列和第三列: 注意:上面的代码假设 CSV 文件中的每行数据都是用逗号分隔的。如果 CSV 文件使用其他字符来分隔数据,那么可以使用 csv.reader() 的

    2024年02月15日
    浏览(7)
  • [Android Studio]Android 数据存储-文件存储学习笔记-结合保存QQ账户与密码存储到指定文件中的演练

    [Android Studio]Android 数据存储-文件存储学习笔记-结合保存QQ账户与密码存储到指定文件中的演练

     🟧🟨🟩🟦🟪 Android Debug 🟧🟨🟩🟦🟪 Topic   发布安卓学习过程中遇到问题解决过程,希望我的解决方案可以对小伙伴们有帮助。 🪁文件存储 💾内部存储 📀存储数据到文件 💿从文件中读取数据 💯实战演练--保存QQ账号与密码 📖acticity_main.xml布局文件  📖 FileSave

    2023年04月14日
    浏览(5)
  • python爬取招聘网信息并保存为csv文件

    python爬取招聘网信息并保存为csv文件

    我们以猎聘网为例 一、打开网站查找信息 进入后搜索想要爬取的岗位信息,右键选择 “检查” 进入开发者界面 点击右上角的network,选择doc 然后点击图中的搜索按钮,输入想要爬取的岗位名称,然后刷新页面,选择搜索下边的第二个 这个时候我们看到有我们需要的url,从

    2024年02月09日
    浏览(4)
  • Python生成指定大小文件:txt/图片/视频/csv

    如题,做测试的懂的都懂,不多解释 相比其他大佬,本脚本基于gpt编写后整理,生成的文件更真实,能够打开预览,看过其他人的生成脚本,只是一个符合大小,但是是空白或不能打开的文件。 话不多说,看示例,记得在创建一个data目录。 代码示例:

    2024年02月13日
    浏览(11)
  • Python矩阵数据保存为.csv格式

    Python矩阵数据保存为.csv格式

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 .csv文件 CSV格式的文件的简单保存与读取 保存Array类型数据为.csv格式,代码如下(示例): 需要保存的矩阵文件内容: 保存的文件内容,重新加载与源文件内容一致 以上就是今天要讲的内容,本文仅仅

    2024年02月14日
    浏览(6)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包