我试图只在XML文件中的标题@lang=en元素中获取文本。此代码获取所有语言的所有标题文本。
entries = root.xpath('//prefix:new-item', namespaces={'prefix': 'http://mynamespace'})
for entry in entries:
all_titles = entry.xpath('./prefix:title', namespaces={'prefix': 'http://mynamespace'})
for title in all_titles:
print (title.text)我尝试了这段代码来获得标题@lang=en-US文本,但它不起作用。
all_titles = entry.xpath('./prefix:title', namespaces={'prefix': 'http://mynamespace'})
for title in all_titles:
test = title.xpath("@lang='en-US'")
print (test)如何获得仅针对英语项目的文本?
发布于 2018-08-17 07:28:37
表达式
//prefix:title[lang('en')]将选择所有英文标题。具体地说:
title属性的xml:lang元素将标题标识为英文,例如<title xml:lang="en-US">或<title xml:lang="en-GB">title元素,例如<section xml:lang="en-US"><title/></section>。如果您只想要美国英语标题,不包括其他形式的英语,那么您可以使用谓词[lang('en-US')]。
https://stackoverflow.com/questions/51887372
复制相似问题