0
我正在使用etree模块。我试图提取有关<text ...>
标签的信息。这里是my XML file。我想如果<text ...">{{Infobox film
开始Infobox film
然后复制{{ }}
之间的所有文字。可能吗?感谢从XML中提取信息
更新:XML文件更新
我正在使用etree模块。我试图提取有关<text ...>
标签的信息。这里是my XML file。我想如果<text ...">{{Infobox film
开始Infobox film
然后复制{{ }}
之间的所有文字。可能吗?感谢从XML中提取信息
更新:XML文件更新
下面的代码片段应该做你想要什么:
import re
from xml.etree import ElementTree
with open('films.xml') as f:
xml = ElementTree.parse(f)
for t in xml.findall('.//{http://www.mediawiki.org/xml/export-0.5/}text'):
print '===================='
m = re.search(r'(?s).*?{{(Infobox film.*?)}}', t.text)
if m:
print m.group(1)
正则表达式那里(?s)
开始,这开启了DOTALL
选项,这意味着.
匹配换行符以及任何其他角色。 .*?
的两个实例是任何charcter的非贪婪匹配 - 即它们将找到零个或更多个字符的最短段,直到表达式的其余部分可以匹配。
谢谢但是,如果''标签有'信息框电影'值,然后打印文本标签的内容,我想。 –
已更新XML文件。工作正常。非常感谢:-) –
@ user559744:我已经更新了我的答案,以展示如何从“{{Infobox film ..}}”部分提取文本。 –