2009-07-22 6 views
1

In meinem Test Dokument Abrufen habe ich ein paar Klassen „Element“ bezeichnet, zur Zeit verwende ich die folgenden mit dieser Klasse alles in der HTML-Datei zu analysieren, mitlxml ungerade Elemente mit CSSSelector

Selection = html.cssselect(".item") 

I‘ d wie es alle ungeraden Elemente auszuwählen, wie dies in Javascript JQuery mit

Selection = $(".item:odd"); 

dass wörtlich Versuch ich folgende Fehlermeldung

lxml.cssselect.ExpressionError erhalten: Die psuedo-cl ass Symbol (u'odd ', 6) ist unbekannt

Ich weiß, das wäre trivial zu implementieren, ich frage mich, ob dies von lxml nativ unterstützt wird.

Antwort

1

Die "ungeraden" und "geraden" Features sind Teil eines Selektors namens "nth-child()"; werfen Sie einen Blick auf die CSS-Selektor-Spezifikation für weitere Informationen:

http://www.w3.org/TR/2001/CR-css3-selectors-20011113/#nth-child-pseudo 

Daher sollten Sie in der Lage sein, genau das Verhalten, die Sie wollen (und es funktioniert für mich mit CSSSelector hier) mit:

".item:nth-child(odd)"