6
Python에서 Elementtree를 사용하여 XML에서 네임 스페이스 관련 태그를 어떻게 검색합니까?Python에서 Elementtree로 RSS 구문 분석
내가 가지고있는 XML/RSS 문서와 같은 :
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:wp="http://wordpress.org/export/1.0/"
>
<channel>
<title>sometitle</title>
<pubDate>Tue, 28 Aug 2012 22:36:02 +0000</pubDate>
<generator>http://wordpress.org/?v=2.5.1</generator>
<language>en</language>
<wp:wxr_version>1.0</wp:wxr_version>
<wp:category><wp:category_nicename>apache</wp:category_nicename><wp:category_parent></wp:category_parent><wp:cat_name><![CDATA[Apache]]></wp:cat_name></wp:category>
</channel>
</rss>
을하지만 모든 시도하고 찾을 때 수행하여 "WP 카테고리"태그 :
import xml.etree.ElementTree as xml
tree = xml.parse(fn)
doc = tree.getroot()
categories = doc.findall('channel/wp:category')
나는 오류를 얻을 :
SyntaxError: prefix 'wp' not found in prefix map
비 네임 스페이스 특정 필드를 검색하면 올바르게 작동합니다. 내가 도대체 뭘 잘못하고있는 겁니까?
이것은 의미가 없습니다. 네임 스페이스 접두사는 부모 태그에 정의되어 있습니다. 나는 내 RSS 파서를 미리 구문 분석 할 필요가 없어서 네임 스페이스를 RSS 파서에 스푼 피드 할 수있다. –
Cerin
나는 당신과 논쟁하지 않고있다. – Tom