2017-03-10 4 views
0

Ich habe einen HTML-Code mit 29 Tabellen.Wie kann mit XPath auf die letzte Tabelle zugegriffen werden?

Wenn ich tun:

table = result.xpath(r'//table[last()]') 

Ich kann nicht auf die Tabelle zugreifen.

Aber wenn ich tun:

table = result.xpath(r'//table') 
print table[28].attrib 

ich auf die Tabelle zugreifen können.

Ich möchte nicht die Tabellenposition übergeben, weil dies ändern kann, aber es wird immer die letzte sein.

MY TABLES

Antwort

1

können Sie Python Index verwenden [-1]

result.xpath(r'//table')[-1] 
1

Sie nicht sagen, ob die Tabellen Geschwister voneinander sind (sie sogar verschachtelt werden konnten!). Der Ausdruck //table[last()] wählt jede Tabelle aus, die die letzte untergeordnete Tabelle des übergeordneten Elements ist. Um auf die letzte untergeordnete Tabelle zuzugreifen, sollten Sie (//table)[last()] verwenden.

Verwandte Themen