Используйте lxml для разбора текстового файла с плохим заголовком в Python
Я хотел бы проанализировать текстовые файлы (хранящиеся локально) с помощью lxml etree. Но все мои файлы (тысячи) имеют заголовки, такие как:
-----BEGIN PRIVACY-ENHANCED MESSAGE-----
Proc-Type: 2001,MIC-CLEAR
Originator-Name: [email protected]
Originator-Key-Asymmetric:
MFgwCgYEVQgBAQICAf8DSgAwRwJAW2sNKK9AVtBzYZmr6aGjlWyK3XmZv3dTINen
TWSM7vrzLADbmYQaionwg5sDW3P6oaM5D3tdezXMm7z1T+B+twIDAQAB
MIC-Info: RSA-MD5,RSA,
AHxm/u6lqdt8X6gebNqy9afC2kLXg+GVIOlG/Vrrw/dTCPGwM15+hT6AZMfDSvFZ
YVPEaPjyiqB4rV/GS2lj6A==
<SEC-DOCUMENT>0001193125-07-200376.txt : 20070913
<SEC-HEADER>0001193125-07-200376.hdr.sgml : 20070913
<ACCEPTANCE-DATETIME>20070913115715
ACCESSION NUMBER: 0001193125-07-200376
CONFORMED SUBMISSION TYPE: 10-K
PUBLIC DOCUMENT COUNT: 7
CONFORMED PERIOD OF REPORT: 20070630
FILED AS OF DATE: 20070913
DATE AS OF CHANGE: 20070913
и первый<
не до строки 51 в этом случае (и не до 51 во всех случаях). Часть xml начинается следующим образом:
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-K
<SEQUENCE>1
<FILENAME>d10k.htm
<DESCRIPTION>FORM 10-K
<TEXT>
<HTML><HEAD>
<TITLE>Form 10-K</TITLE>
</HEAD>
<BODY BGCOLOR="WHITE">
<h5 align="left"><a href="#toc">Table of Contents</a></h5>
Могу ли я справиться с этим на лету с помощью lxml? Или я должен использовать потоковый редактор, чтобы пропустить заголовок каждого файла? Спасибо!
Вот мой текущий код и ошибка.
from lxml import etree
f = etree.parse('temp.txt')
XMLSyntaxError: Start tag expected, '<' not found, line 1, column 1
Редактировать:
FWIW, вот ссылка нафайл.