Python XML 解析和默认NS
Python XML parsing and default NS
我正在使用 xml.etree.ElementTree 来解析 xml 文件。我想知道是否有办法设置一个默认的 ns 用于所有解析操作。
目前我使用像这个片段这样的方法,没问题:
name_space = 'myns'
if node.tag == '{%s}Name' % name_space:
当所有标签的ns都相同时,有没有更好的方法?
谢谢
NS_MAP = {"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"art": "http://simile.mit.edu/2003/10/ontologies/artstor#",
"foaf": "http://xmlns.com/foaf/0.1/",
"dcterms": "http://purl.org/dc/terms/",
"sioc": "http://rdfs.org/sioc/ns#",
"oa": "http://www.openannotation.org/ns/"}
#short hands the ns
RDF = "{%s}" % NS_MAP['rdf']
RDFS = "{%s}" % NS_MAP['rdfs']
ART = "{%s}" % NS_MAP['art']
FOAF = "{%s}" % NS_MAP['foaf']
DCTERMS = "{%s}" % NS_MAP['dcterms']
SIOC = "{%s}" % NS_MAP['sioc']
OA = "{%s}" % NS_MAP['oa']
你可以试试这个
我正在使用 xml.etree.ElementTree 来解析 xml 文件。我想知道是否有办法设置一个默认的 ns 用于所有解析操作。
目前我使用像这个片段这样的方法,没问题:
name_space = 'myns'
if node.tag == '{%s}Name' % name_space:
当所有标签的ns都相同时,有没有更好的方法?
谢谢
NS_MAP = {"rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
"rdfs": "http://www.w3.org/2000/01/rdf-schema#",
"art": "http://simile.mit.edu/2003/10/ontologies/artstor#",
"foaf": "http://xmlns.com/foaf/0.1/",
"dcterms": "http://purl.org/dc/terms/",
"sioc": "http://rdfs.org/sioc/ns#",
"oa": "http://www.openannotation.org/ns/"}
#short hands the ns
RDF = "{%s}" % NS_MAP['rdf']
RDFS = "{%s}" % NS_MAP['rdfs']
ART = "{%s}" % NS_MAP['art']
FOAF = "{%s}" % NS_MAP['foaf']
DCTERMS = "{%s}" % NS_MAP['dcterms']
SIOC = "{%s}" % NS_MAP['sioc']
OA = "{%s}" % NS_MAP['oa']
你可以试试这个