【发布时间】:2017-12-20 21:29:48
【问题描述】:
我正在尝试从单击网站here 上的“SEC 投资顾问报告”按钮(仅供参考,此链接到 SEC 网站)的 gzip 中提取 XML 文件。下面是我的(最小)代码。我继续得到“嵌入的空字符”或“嵌入的空字节”,这取决于我是从我的请求中提供gzip.open() .text 还是.content。谁能帮我加载这个文件,以便我可以访问 XML?
import requests
import gzip
file = gzip.open(requests.get(r'https://www.adviserinfo.sec.gov/IAPD/Content/BulkFeed/CompilationDownload.aspx?FeedPK=39545&FeedType=IA_FIRM_SEC').text,'rt')
【问题讨论】:
-
gzip.open采用文件名。此外,该链接中的 IA_FIRM_SEC_Feed_12_20_2017.xml.gz 似乎不是有效的 gzip 存档。它附加了 HTML。 -
您可以使用gzip.decompress。不过,请注意我对附加 HTML 的评论。
gzip.decompress(request.content[:request.content.find(b"\r\n\r\n<!DOCTYPE html>") - 1])
标签: python python-3.x gzip