gpt4 book ai didi

python - 从 .txt 文件中删除 ASCII 编码的二进制 blob

转载 作者:太空宇宙 更新时间:2023-11-03 18:06:42 30 4
gpt4 key购买 nike

我想解析 10-K 文件(公司的财务报表)。 Apple 的示例可以找到 here (查找 .txt 文件)。现在,我正在读这篇文章research paper (参见第 30-31 页)如何解析这些文件。第一步被描述为删除所有 ASCII 编码段...这就是我想要弄清楚如何删除它们的内容。

我在 StackOverflow 上看到几个关于如何删除非 ASCII 代码的问题,但这是不同的。 ASCII 编码的段是: 所有带有 <TYPE> 的文档段标签 GRAPHIC , ZIP , EXCELPDF - 我想删除它们。

因此,如果我按如下方式加载 txt 文件:

fil = open('F:\\file.txt','r')
x = fil.read()

如何从此 txt 文件中删除所有 ASCII 编码段?要删除 HTML 标签,我使用过程 here ,但是 ASCII 编码段又如何呢?

最佳答案

如果我理解正确,您正在处理的格式在某种程度上与 SEC EDGAR 过程相关。

我还没有花时间正式查找它。也许你应该。

通过检查您链接到的 Apple 声明,您似乎想要替换与正则表达式 <DOCUMENT>\s*<TYPE>(?:GRAPHIC|ZIP|EXCEL|PDF).*?</DOCUMENT> 匹配的任何内容。带有一个空字符串。

免责声明:正确的实现将使用 XML 解析器并提取您想要的元素,而不是尝试按词法删除您不想要的元素。这在 lxml 中应该不难.

我首先想到的是XBLR但事实并非如此。尝试用 ETree 解析它引发异常,因为某些元素(包括 <TYPE> )的结束标记似乎是可选的。最好的方法是找出这是什么格式(EDGAR site 有多种规范;也许其中之一?)并找到正确的 DTD,然后从那里继续。

一旦你解决了这个问题,你想看看如何 remove elements with XPath也许how to use regex in ( lxml ) XPath 。然后可能会重新实现您已经使用 XML 和 XPath 完成的其他提取。

关于python - 从 .txt 文件中删除 ASCII 编码的二进制 blob,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26751804/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com