Je suis en train de le faire (en utilisant lxml):XPath: correspondre à plusieurs éléments en une seule expression
//*[@id="32808345" or @id="33771423" or @id="15929470" or @id="33771117" or @id="15929266"]
afin d'obtenir tous les éléments, peu importe l'étiquette, avec les ID spécifiés. Je reçois le retraçage suivant:
invalid attribute predicate
voilà comment je suis générer la str (si cela est pertinent au problème):
refs = ' or '.join('@id="%s"' % ref for ref in refs[0:5])
elements = etree.iterfind('//*[%s]' % refs)
EDIT, avec la solution ci-dessous, je suis obtenir cette erreur:
File "lxml.etree.pyx", line 1201, in lxml.etree._Element.iterchildren (src/lxml/lxml.etree.c:36294)
File "lxml.etree.pyx", line 2163, in lxml.etree.ElementChildIterator.__init__ (src/lxml/lxml.etree.c:45331)
File "lxml.etree.pyx", line 2118, in lxml.etree._ElementTagMatcher._initTagMatch (src/lxml/lxml.etree.c:44913)
File "apihelpers.pxi", line 1413, in lxml.etree._getNsTag (src/lxml/lxml.etree.c:21412)
ValueError: Empty tag name
Je ne suis pas sûr de ce que l'implémentation de python xpath implique, mais le xpath fonctionne pour moi dans d'autres langages. – Wrikken