CSV 是一种包含逗号分隔值的数据存储格式。它通常用于存储表格数据,这些数据也可以在 MS Excel 等电子表格应用程序中显示。但 CSV 文件不支持数据层次结构。 JSON 或 JavaScript Object Notation 是一种轻量级结构化数据格式类型。它也被用作 XML 的替代品来存储和传输数据。因此,如果您需要传输表格数据或将结构化数据存储为表格形式,则需要将格式相互转换。在本文中,我们将学习如何在 Python 中将 CSV 转换为 JSON 以及将 JSON 转换为 CSV
以下主题涵盖如下:
用于 CSV 到 JSON 和 JSON 到 CSV 转换的 Python API
GroupDocs.Conversion 具有允许 JSON 和 CSV 文件相互转换的 API。在本文中,我们将使用 GroupDocs.Conversion Cloud 的 Python SDK API 将 JSON 转换为 CSV 文件,并将 CSV 转换为 JSON 格式。它是一个功能丰富、独立于平台的文档和图像转换 Python 库。它可以快速转换任何支持的文件格式 的高质量图像和文档,例如文字处理文档、电子表格、演示文稿、图像等等。
您可以在控制台中使用以下命令将 Python 转换 SDK 安装到您的 Python 应用程序中:
pip install groupdocs_conversion_cloud
在执行上述步骤之前,请从仪表板获取您的客户端 ID 和密码。获得 ID 和密码后,在 Python 应用程序中添加代码:
# 从 http://api.groupdocs.cloud 在你的 python 应用程序中导入 Python SDK
import groupdocs_conversion_cloud
# 免费注册后,从 https://dashboard.groupdocs.cloud 获取 client_id 和 client_secret。
client_id = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
client_secret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
# 获取文件 API 配置
configuration = groupdocs_conversion_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
storage_name = "InternalStorage"
如何使用 Python 将 CSV 转换为 JSON
您可以按照下面提到的简单步骤将 csv 转换为 json 文件:
上传文件
首先,使用下面给出的代码示例将 CSV 文件上传到云端:
# 将 CSV 文件上传到您的云存储
# 创建文件 API 的实例
file_api = groupdocs_conversion_cloud.FileApi.from_config(configuration)
# 调用上传文件请求
request = groupdocs_conversion_cloud.UploadFileRequest("python-testing\sample-csv-file.csv", "H:\\groupdocs-cloud-data\\sample-csv-file.csv", storage_name)
# 上传json文件到云端
response = file_api.upload_file(request)
print(response.uploaded)
因此,上传的 CSV 文件将在云端仪表板的 文件部分 中可用。
使用 Python 脚本将 JSON 文件转换为新的 CSV 文件
以下步骤允许在 Python 应用程序中以编程方式将 JSON 文件转换为 CSV 格式。
- 首先,创建 ConvertApi 的实例
- 然后,使用 ConvertSettings 创建转换设置实例
- 接下来,提供文件存储名称
- 将输入 CSV 文件路径和输出格式设置为“json”
- 接下来,创建 CsvLoadOptions 的实例。
- 提供 CSV 分隔符
- 然后,设置加载\选项和输出\路径
- 之后,使用 ConvertSettings 作为参数创建 ConvertDocumentRequest
- 最后,通过使用 ConvertDocumentRequest 调用 convert\document() 将 pdf 转换为 excel
以下代码示例显示了如何使用 Python 将 CSV 格式更改为 JSON 格式:
# 如何在 Python 中将 PowerPoint PPT 或 PPTX 转换为 JPG/JPEG 格式
try:
# 创建 API 实例
convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)
# 定义转换设置
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.storage_name = storage_name
settings.file_path = "python-testing/sample-csv-file.csv"
settings.format = "json"
loadOptions = groupdocs_conversion_cloud.CsvLoadOptions()
loadOptions.separator = ","
settings.load_options = loadOptions
settings.output_path = "python-testing"
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)
response = convert_api.convert_document(request)
print("Successfully converted CSV format to JSON file: " + str(response))
except groupdocs_conversion_cloud.ApiException as e:
print("Exception while calling API: {0}".format(e.message))
最后,上面的代码示例会将 JSON 文件保存在云端。这是将 csv 转换为 json 文件的最佳方式。
下载转换后的文件
上面的代码示例会将转换后的 csv 保存到云端的 json 文件中。您可以使用以下代码示例下载它:
# API初始化以下载转换后的文件
import shutil
file_api = groupdocs_conversion_cloud.FileApi.from_config(configuration)
# 创建下载 json 文件请求
request = groupdocs_conversion_cloud.DownloadFileRequest("python-testing\\sample-csv-file.json", storage_name)
# 下载转换后的文件
response = file_api.download_file(request)
# 将下载的json文件移动到本地目录
shutil.move(response, "H:\\groupdocs-cloud-data\\")
如何使用 Python 将 JSON 转换为 CSV
以下步骤允许在您的 Python 应用程序中将 JSON 文件转换为 CSV 文件。
- 首先,创建 ConvertApi 的实例
- 然后,使用 ConvertSettings 创建转换设置实例
- 接下来,提供您的云存储名称
- 将输入 JSON 文件路径和输出格式设置为“csv”
- 然后,设置输出文件路径
- 现在,使用 ConvertSettings 作为参数创建 ConvertDocumentRequest
- 最后通过ConvertDocumentRequest调用convert\document()方法将pdf在线转换为excel代码
以下代码示例显示了如何使用 Python 将 JSON 格式转换为 CSV 文档:
# 如何在 Python 中将 JSON 文件转换为 CSV 格式
try:
# 创建 API 实例
convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)
# 定义转换设置
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.storage_name = storage_name
settings.file_path = "python-testing/sample-file.json"
settings.format = "csv"
settings.output_path = "python-testing"
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)
response = convert_api.convert_document(request)
print("Successfully converted json to csv file: " + str(response))
except groupdocs_conversion_cloud.ApiException as e:
print("Exception while calling API: {0}".format(e.message))
最后,上面的代码示例会将 CSV 文件保存在云端。
免费在线 JSON 和 CSV 转换器
Groupdocs.Conversion 提供免费的在线 CSV 到 JSON 转换器和免费的在线 JSON 到 CSV 转换器。它是使用 Groupdocs.Conversion Cloud API 开发的。
结论
总之,您学习了如何转换 JSON 文件和 CSV 格式,以及如何以编程方式将 CSV 文件转换为 JSON 格式。你现在明白了:
- 如何以编程方式将 CSV 转换为 JSON;
- 如何以编程方式将 JSON 转换为 CSV;
此外,您可以使用 文档 或 GitHub 上提供的示例了解有关 GroupDocs.Conversion 文件格式转换 API 的更多信息。我们还提供了一个 API 参考 部分,让您可以直接通过浏览器可视化我们的 API 并与之交互。
问一个问题
您可以通过我们的免费支持论坛 询问有关如何将 JSON 转换为 CSV 或 CSV 转换为 JSON 格式的问题