<p>我想使用python2.7从EDGAR文件中删除任何不是文档文本的内容(这些文件以.txt文件的形式在线提供)。文件的外观示例如下:</p>
<p><a href="http://www.sec.gov/Archives/edgar/data/1800/000104746908003092/0001047469-08-003092.txt" rel="nofollow noreferrer">Example</a></p>
<p>EDGAR从本文件第48页开始提供其文档类型定义:</p>
<p><a href="http://www.sec.gov/info/edgar/pdsdissemspec910.pdf" rel="nofollow noreferrer">DTD</a></p>
<p>我的程序的第一部分将EDGAR联机数据库中的.txt文件转换成一个本地文件,我将其命名为“parseme.txt”。我想知道的是如何使用DTD解析.txt文件。我会使用像BeautifulSoup这样的罐装解析模块来完成这项工作,但是EDGAR的格式看起来很独特,我希望避免使用大型regex来完成这项工作。</p>
<pre><code>import os
filename = 'parseme.txt'
with open(filename) as f:
lines = f.readlines()
</code></pre>
<p>我的问题与<a href="https://stackoverflow.com/questions/12505419/parse-sgml-with-open-arbitrary-tags-in-python-3">Parse SGML with Open Arbitrary Tags in Python 3</a>和<a href="https://stackoverflow.com/questions/12412994/use-lxml-to-parse-text-file-with-bad-header-in-python/12431072#12431072">Use lxml to parse text file with bad header in Python</a>上的问题有关,但我认为不同,因为我的问题与python2.7有关,我不关心头-我只关心文件的文本。</p>