如何提取atom文件的内容?

Python/PHP/Perl 开发与设计
回复
drop
帖子: 10
注册时间: 2018-05-26 19:54
送出感谢: 4 次
接收感谢: 0

如何提取atom文件的内容?

#1

帖子 drop » 2018-06-14 10:07

atom.xml:

代码: 全选

<feed xmlns="http://purl.org/atom/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" version="0.3" xml:lang="zh">
<title>...</title>
<link href="..."/>
<modified>...</modified>
<tagline>...</tagline>
...
<entry>
<title>abc</title>
<link href="..."/>
</entry>
<entry>
<title>xyz</title>
<link href="..."/>
</entry>
...
</feed>
我想把所有<entry>...</entry>中的<title>的内容提取出来,请问该怎么做?

我试过:

代码: 全选

from xml.etree.ElementTree import parse

tree = parse("atom.xml")
root = tree.getroot()

for i in tree.findall('entry'):
    print(i.find("title").text)
但运行后没有任何输出,为什么?
头像
astolia
论坛版主
帖子: 3327
注册时间: 2008-09-18 13:11
送出感谢: 1 次
接收感谢: 557 次

Re: 如何提取atom文件的内容?

#2

帖子 astolia » 2018-06-14 15:22

因为有namespace

代码: 全选

for i in tree.findall('{http://purl.org/atom/ns#}entry'):
    print(i.find("{http://purl.org/atom/ns#}title").text)
这些用户感谢了作者 astolia 于这个帖子:
drop (2018-06-16 13:59)
评价: 3.7%
回复

回到 “Python/Php/Perl”