在 python 和 firefox 中将页面保存为 xlsx

saving a page in python and firefox as xlsx

当我通过我的 firefox 内置下载器保存 this link 时,它会给我一个可用的 xlsx 文件,我可以通过 excel 或 libreoffic 打开它。但是当我尝试通过 aria2c 或 urllib.request.urlretrieve 在 python 代码中下载它时,我遇到了一个问题,即保存的文件无法使用。为什么会出现这个问题?你能给我一个 python 代码,它存储上面 link 中可用的 xlsx 文件吗?

以下方法应该可以满足您的需要:

import requests
import re
import os

xlsx_req = requests.get("http://members.tsetmc.com/tsev2/excel/MarketWatchPlus.aspx?d=0")
xlsx_filename = os.path.basename(re.findall("filename=(.+)", xlsx_req.headers['content-disposition'])[0])

with open(xlsx_filename, 'wb') as f_xlsx:
    f_xlsx.write(xlsx_req.content)

这使用请求下载文件。它还从 content-disposition header.

中提取要使用的文件名