在 Python 中使用 REST API 將 Excel 轉換為 CSV

在本文中,我們將探索各種快速高效的方法,將數據從 Excel 導出到雲上的 CSV。我們使用 Excel 文件以表格形式維護髮票、分類帳、庫存、賬戶和其他數據。另一方面,CSV(逗號分隔值)文件將表格數據(數字和文本)存儲為純文本,並使用逗號分隔值。在 CSV 中,文件中的每一行都是一條數據記錄,每條記錄由一個或多個字段組成,字段之間以逗號分隔。 Excel 到 CSV 的轉換允許將數據導入其他應用程序。本文將重點介紹如何使用 Python 中的 REST API 將 Excel 文件轉換為 CSV。

本文應涵蓋以下主題:

Excel 到 CSV 轉換 REST API 和 Python SDK

為了將 XLSX 轉換為 CSV,我們將使用 GroupDocs.Conversion Cloud 的 Python SDK API。它使我們能夠將任何支持的文件格式 的文檔和圖像無縫轉換為我們需要的任何格式。請在控制台中使用以下命令安裝它:

pip install groupdocs_converison_cloud

在執行上述步驟之前,請從儀表板獲取您的客戶端 ID 和密碼。獲得 ID 和密碼後,添加如下所示的代碼:

# 下面的代碼示例演示瞭如何在代碼中添加 Client id 和 secret。
client_id = "659fe7da-715b-4744-a0f7-cf469a392b73"
client_secret = "b377c36cfa28fa69960ebac6b6e36421"

configuration = groupdocs_conversion_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
my_storage = ""

在 Python 中使用 REST API 將 Excel 轉換為 CSV

按照下面給出的簡單步驟,我們可以輕鬆地將 Excel 文件轉換為雲上的 CSV:

  1. 上傳 XLSX 文件到雲端。
  2. 將 Excel 轉換為 CSV
  3. 下載 轉換後的 CSV 文件。

上傳 Excel 文件

首先,我們將使用以下代碼示例將 XLSX 文件上傳到雲端:

# 此代碼示例演示如何將 XLSX 文件上傳到雲。
# 創建 API 實例
file_api = groupdocs_conversion_cloud.FileApi.from_config(configuration)

# 上傳文件請求
request = groupdocs_conversion_cloud.UploadFileRequest("Sample.xlsx", "C:\\Files\\Conversion\\Sample.xlsx", my_storage)

# 上傳示例文件
response = file_api.upload_file(request)

因此,上傳的 XLSX 文件將在雲端儀表板的 文件部分 中可用。

在 Python 中將 Excel 轉換為 CSV

現在,我們將按照以下步驟以編程方式將上傳的 XLSX 轉換為 CSV:

  • 創建 ConvertApi 的實例。
  • 初始化 ConvertSettings 對象。
  • 設置 XLSX 文件路徑。
  • 將“csv”分配給格式。
  • 提供輸出文件路徑。
  • 使用 ConvertSettings 創建 ConvertDocumentRequest。
  • 通過調用 convert\document() 方法進行轉換。

以下代碼示例展示瞭如何在 Python 中使用 REST API 將 Excel 文件轉換為 CSV。

# 此代碼示例演示如何將 Excel 轉換為 CSV。
# 創建必要的 API 實例
convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)

# 準備轉換設置
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "Sample.xlsx"  # Input file
settings.format = "csv"             # Output format
settings.output_path = "output"     # Folder path to save converted file

# 轉換文檔請求
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)

# 轉換文檔
result = convert_api.convert_document(request)

# 完畢
print("Document converted: " + result[0].path)
使用 Python 中的 REST API 將 Excel 轉換為 CSV。

使用 Python 中的 REST API 將 Excel 轉換為 CSV。

下載轉換後的文件

上面的代碼示例會將轉換後的 CSV 文件保存在雲端。可以使用以下代碼示例下載它:

# 此代碼示例演示瞭如何從雲端下載 CSV。
# API初始化
file_api = groupdocs_conversion_cloud.FileApi.from_config(configuration)

# 下載文件請求
request = groupdocs_conversion_cloud.DownloadFileRequest("output/Sample.csv", my_storage)

# 下載文件
response = file_api.download_file(request)

# 將下載的文件移動到您的工作目錄
shutil.move(response, "C:\\Files\\Conversion\\")

將 Excel 轉換為 CSV 並直接下載文件

我們可以按照以下步驟將 XLSX 轉換為 CSV 並直接下載轉換後的 CSV 文件:

  • 首先,創建一個 ConvertApi 的實例。
  • 接下來,定義 ConvertSettings 並設置上傳的 XLSX 文件路徑。
  • 然後,將“csv”分配給格式。
  • 將輸出文件路徑設置為無。
  • 之後,使用 ConvertSettings 作為參數創建 ConvertDocumentRequest。
  • 最後調用convert\document\download()方法將轉換後的文件保存到本地磁盤。

以下代碼示例顯示瞭如何將 Excel 文件轉換為 CSV 文件並使用 Python 中的 REST API 直接下載它。 API 應返迴轉換後的 CSV 文件作為響應。請按照前面提到的步驟上傳文件。

# 此代碼示例演示如何將 Excel 轉換為 CSV 並直接下載轉換後的文件。
# 創建必要的 API 實例
convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)

# 準備轉換設置
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.xlsx"
settings.format = "csv"
settings.output_path = None    # leave OutputPath will result the output as document IOStream

# 準備請求
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)

# 轉換和下載
response = convert_api.convert_document_download(request)

# 將下載的文件移動到您的工作目錄
shutil.move(response, "C:\\Files\\Conversion\\")

不使用雲存儲的 Excel 到 CSV 轉換

我們還可以按照以下步驟在不使用雲存儲的情況下將 Excel 文件轉換為 CSV:

  • 首先,創建一個 ConvertApi 的實例。
  • 接下來,使用目標格式創建 ConvertDocumentDirectRequest 並輸入 XLSX 文件路徑作為參數。
  • 然後,以 ConvertDocumentDirectRequest 作為參數調用 convert\document\direct() 方法。
  • 最後,使用 FileStream.writeFile() 方法將轉換後的輸出 CSV 文件保存到本地路徑。

以下代碼示例展示瞭如何在不使用 Python 雲存儲的情況下將 XLSX 轉換為 CSV。這意味著我們將在請求正文中傳遞輸入文件,並在 API 響應中接收輸出文件。

# 此代碼示例演示如何在不使用雲存儲的情況下將 Excel 轉換為 CSV。
# 創建必要的 API 實例
convert_api = groupdocs_conversion_cloud.轉變Api.from_keys(client_id, client_secret)

# 準備請求
request = groupdocs_conversion_cloud.轉變DocumentDirectRequest("csv", "C:\\Files\\Conversion\\sample.xlsx")

# 轉變
result = convert_api.convert_document_direct(request)

# 將下載的文件移動到您的工作目錄
shutil.move(result, "C:\\Files\\Conversion\\")

在 Python 中使用 REST API 將 CSV 轉換為 Excel

我們還可以將逗號分隔的數據從 CSV 文件導出到雲端的格式良好的 Excel 文件中。要將 CSV 轉換為 Excel,請按照以下步驟操作:

  • 首先,創建一個 ConvertApi 的實例。
  • 接下來,使用目標格式創建 ConvertDocumentDirectRequest 並輸入 CSV 文件路徑作為參數。
  • 然後,以 ConvertDocumentDirectRequest 作為參數調用 convert\document\direct() 方法。
  • 最後,使用 FileStream.writeFile() 方法將轉換後的輸出 XLSX 文件保存到本地路徑。

以下代碼示例展示瞭如何在 Python 中使用 REST API 將 CSV 轉換為 Excel 文件。

# 此代碼示例演示如何將 CSV 轉換為 Excel。
# 創建必要的 API 實例
convert_api = groupdocs_conversion_cloud.轉變Api.from_keys(client_id, client_secret)

# 準備請求
request = groupdocs_conversion_cloud.轉變DocumentDirectRequest("xlsx", "C:\\Files\\Conversion\\sample.csv")

# 轉變
result = convert_api.convert_document_direct(request)

# 將下載的文件移動到您的工作目錄
shutil.move(result, "C:\\Files\\Conversion\\")

在線試用

請試用以下免費的在線 XLSX 到 CSV 和 CSV 到 XLSX 轉換工具,它們是使用上述 API 開發的。

結論

在本文中,我們學習瞭如何:

  • 在 Python 中將 Excel 轉換為 CSV,將 CSV 轉換為 Excel;
  • 將 XLSX 轉換為 CSV 並直接下載轉換後的文件;
  • 不使用雲存儲的 XLSX 到 CSV 轉換;
  • 以編程方式將 XLSX 文件上傳到雲端;
  • 從雲端下載 CSV 文件。

此外,您可以使用 文檔 了解有關 GroupDocs.Conversion Cloud API 的更多信息。我們還提供了一個 API 參考 部分,讓您可以直接通過瀏覽器可視化我們的 API 並與之交互。如有任何歧義,請隨時在論壇上與我們聯繫。

也可以看看