HOWTO · Python
在 Python 中從 URL 下載 CSV
本教程討論如何在 Python 中從 URL 下載 CSV 檔案。
本頁內容
我們可以使用不同的模組,如 requests、urllib 等,在 Python 中從 Web 讀取資料。逗號分隔的文字檔案 (CSV) 是可以使用 Pandas 包讀入 DataFrame 的資料檔案。
本教程演示如何從 Python 中的 URL 下載 CSV 檔案。
在 Python 中使用 pandas.read_csv() 函式從 URL 下載 CSV 檔案
Pandas 模組中的 read_csv() 函式可以從不同來源讀取 CSV 檔案並將結果儲存在 Pandas DataFrame 中。
我們可以通過直接在函式中提供 URL 來使用此函式從 Python 中的 URL 下載 CSV 檔案。
程式碼:
import pandas as pd
df = pd.read_csv("https://sample.com/file.csv")
上面的程式碼將從提供的 URL 下載 CSV 檔案並將其儲存在 DataFrame df 中。
在 Python 中使用 urllib 和 csv 模組從 URL 下載 CSV 檔案
urllib 模組用於在 Python 中處理和獲取來自不同協議的 URL。我們可以使用 urllib.urlopen() 函式來建立到 URL 的連線並讀取其內容。
可以使用 csv 模組處理此響應。csv 模組適用於 Python 中的 CSV 檔案。
它可以使用 csv.reader() 函式解析響應。然後我們可以一次顯示解析結果或一次遍歷內容一行。
程式碼:
import urllib
import csv
res = urllib.urlopen("https://sample.com/file.csv")
data = csv.reader(res)
在 Python 中使用 requests 和 csv 模組從 URL 下載 CSV 檔案
requests 是 Python 中另一個可以從 URL 獲取資料的模組。它是一個簡單的 HTTP 庫,具有更好的錯誤處理能力。
我們可以使用該模組中的 get() 函式從 CSV 檔案的給定 URL 獲取響應。我們使用 iter_lines() 函式來遍歷 get() 函式獲取的響應內容。
然後使用 csv.reader() 函式再次解析此內容,以獲取適當格式的最終資料。
程式碼:
import requests
import csv
res = requests.get("https://sample.com/file.csv")
t = res.iter_lines()
data = csv.reader(text, delimiter=",")
まとめ
我們討論瞭如何在 Python 中從 URL 下載 CSV 檔案。pandas.read_csv() 函式是最直接的方法,因為它會自動獲取檔案並將其儲存在 DataFrame 中。
其他方法要求我們獲取響應並使用 Python 中的 csv 模組對其進行解析以獲得最終結果。