Python:如何从请求响应中读取 excel 文件?

hkj*_*dj1 3 python xlrd pandas python-requests

我正在使用请求库将 excel 文件作为流下载。

r = requests.get(my_url, stream=True)

我想读取这个 excel 文件中的数据,为此我可以尝试使用 Pandas。但我不确定如何从我得到的响应中读取文件。我能做什么?

lin*_*mnt 13

您可以直接在pandas 中使用url 来读取excel 文件,而无需使用请求。

import pandas as pd

df = pd.read_excel(my_url)
Run Code Online (Sandbox Code Playgroud)

如果有必要通过请求检索数据,那么这里的答案(如何从付费墙后面下载 Excel 文件到熊猫数据框?)可能就足够了:

只需将文件内容包装在 BytesIO 中:

import pandas as pd
import io

with io.BytesIO(r.content) as fh:
    df = pd.io.excel.read_excel(fh, sheetname=0)
Run Code Online (Sandbox Code Playgroud)