从xml文件中提取文本

从xml文件中提取文本,xml,python-3.4,Xml,Python 3.4,我试图从XML文件中提取文本,但没有得到预期的结果 这是我试图解析的XML片段,以说明我的问题: Desocupado lector:sin juramento me podrás creer que quisiera que este; 科莫·塞拉波纳,自由与自由之路: 非福利-支持自由买卖人奥罗。 你是卢戈,你是玛根,你是赫拉西奥,你是一个安静的人。西塔塔雷斯酒店 德尔波德拉穆尔特,阿库迪尔卢埃戈监狱: 帕丽达·莫尔斯·阿奎奥·佩德·帕佩鲁姆·塔伯纳斯, 调节器。 我的朋友和我的爱人都是我

我试图从XML文件中提取文本,但没有得到预期的结果

这是我试图解析的XML片段,以说明我的问题:


Desocupado lector:sin juramento me podrás creer que quisiera que este;
科莫·塞拉波纳,自由与自由之路:
非福利-支持自由买卖人奥罗。
你是卢戈,你是玛根,你是赫拉西奥,你是一个安静的人。西塔塔雷斯酒店
德尔波德拉穆尔特,阿库迪尔卢埃戈监狱:
帕丽达·莫尔斯·阿奎奥·佩德·帕佩鲁姆·塔伯纳斯,
调节器。
我的朋友和我的爱人都是我的朋友
如果你是神的化身,那么你的生命就是一个永恒的生命
库里奥西达、帕拉布拉斯、梅诺斯、米斯莫·迪奥斯:
自我陶醉:伊尼米科斯·维斯特罗斯。
在马洛斯彭萨米恩托斯酒店,
acudid con el Evangelio:
记录在案,没有深思熟虑。
朋友们的不稳定,是的,是的,是的
Donec eris felix,multos numerabis amicos,
时间是新的,时间是新的。
Y con estos latinicos Y otros tales os tendrán siquiera por gramático,que
我是康内斯托,迪奥斯·德·萨卢德,我是莫诺·奥尔维德。溪谷。
我试图提取某些标记之间的所有文本。例如,为了获取
标记之间的所有文本,我尝试了以下方法:

将xml.etree.ElementTree作为ET导入
tree=ET.parse(“file.xml”)
root=tree.getroot()
text=“”
对于root.findall(“.//autor”)中的n:
text+=n.text
但当我检查字符串时,我只得到:

“选举人:sin juramento me podrás creer que quisiera que este;
科莫·塞拉波纳,自由和谨慎的策略:

这就是它的工作原理吗?我希望得到

之间的所有文本。你也要迭代到孩子们那里,从那里收集文本

此外,我还使用了“tail”,因为它捕获标记之间的信息。引用文件:

如果元素是从XML文件创建的,则text属性保持不变 元素的开始标记与其第一个子元素之间的文本,或 “结束”标记或“无”,并且tail属性保存介于 元素的结束标记和下一个标记,或无。

结果

Desocupado lector: sin juramento me podrás creer que quisiera que este;
como será poner, tratando de libertad y cautiverio:

   Non bene pro toto libertas venditur auro.
Y luego, en el margen, citar a Horacio, o a quien lo dijo. Si tratáredes
del poder de la muerte, acudir luego con:

   Pallida mors aequo pulsat pede pauperum tabernas,
   Regumque turres.

Si de la amistad y amor que Dios manda que se tenga al enemigo, entraros
luego al punto por la Escritura Divina, que lo podéis hacer con tantico de
curiosidad, y decir las palabras, por lo menos, del mismo Dios:
Ego autem dico vobis: diligite inimicos vestros. 
Si tratáredes de malos pensamientos,
acudid con el Evangelio: 
De corde exeunt cogitationes malae. 
Si de la instabilidad de los amigos, ahí está Catón, que os dará su dístico:

   Donec eris felix, multos numerabis amicos,
   tempora si fuerint nubila, solus eris.

Y con estos latinicos y otros tales os tendrán siquiera por gramático, que
Y con esto, Dios te dé salud, y a mí no olvide. Vale.

文档中说文本只显示标签的文本内容。其他内容不是文本的一部分(集合和子集理论?):
Element.findall()只查找带有标记的元素,这些元素是当前元素的直接子元素。Element.find()查找带有特定标记的第一个子元素,Element.text访问元素的文本内容。Element.get()访问元素的属性:
此外,
xml.etree.ElementTree模块对恶意构造的数据不安全。如果需要解析不受信任或未经验证的数据,请参阅XML漏洞。
非常感谢,该“tail”方法正在提取我想要的文本。
Desocupado lector: sin juramento me podrás creer que quisiera que este;
como será poner, tratando de libertad y cautiverio:

   Non bene pro toto libertas venditur auro.
Y luego, en el margen, citar a Horacio, o a quien lo dijo. Si tratáredes
del poder de la muerte, acudir luego con:

   Pallida mors aequo pulsat pede pauperum tabernas,
   Regumque turres.

Si de la amistad y amor que Dios manda que se tenga al enemigo, entraros
luego al punto por la Escritura Divina, que lo podéis hacer con tantico de
curiosidad, y decir las palabras, por lo menos, del mismo Dios:
Ego autem dico vobis: diligite inimicos vestros. 
Si tratáredes de malos pensamientos,
acudid con el Evangelio: 
De corde exeunt cogitationes malae. 
Si de la instabilidad de los amigos, ahí está Catón, que os dará su dístico:

   Donec eris felix, multos numerabis amicos,
   tempora si fuerint nubila, solus eris.

Y con estos latinicos y otros tales os tendrán siquiera por gramático, que
Y con esto, Dios te dé salud, y a mí no olvide. Vale.