2010-11-03 5 views
0

J'essaye d'analyser un élément d'un site Web qui est à l'intérieur d'une table. Ceci est l'expression XPath exacte que j'utilise:Certains sites Web ne peuvent pas être analysés par xpath?

[xpathParser search:@"/table[1]/tr[2]/td[1]"]; 

Cependant, quand je lance le programme, ma chaîne arrive vide. Je me demande si le site me bloque de l'analyse, ou si mon expression est correcte. Si ça aide, c'est le site, et la pièce que j'essaye d'analyser est l'élément Atlantic.

http://cluster.leaguestat.com/download.php?client_code=ahl&file_path=daily-report/daily-report.html

+0

Que voulez-vous extraire de la page? –

+0

Que diriez-vous d'essayer d'analyser la première table, conférence de l'Atlantique, GP pour Portland ... la réponse devrait sortir à 11. – nicholjs

Répondre

0

Il y a plusieurs sections « atlantique » sur la page, et non pas ce que vous entendez par l'élément Atlantique. Votre expression xpath peut ne pas être correcte, car le 'tr' n'est pas un descendant direct de la table (il y a un tbody entre les deux). Vous pouvez essayer //table/tbody/tr[2]/td[1], ainsi que le xpath checker firefox plugin pour tester des expressions.

+0

Merci William. Que diriez-vous d'essayer d'analyser la première table, conférence de l'Atlantique, GP pour Portland ... la réponse devrait arriver à 11. Je pense que ce fait m'aidera vraiment. – nicholjs

+0

Pour cela, essayez '/ html/body/table [1]/tbody/tr [td [1] =" Portland "]/td [2]'. Ceci sélectionne la première table dans la section de corps html, puis la deuxième colonne dans la rangée de table (tr) où la première cellule dans cette rangée est "Portland". – William

Questions connexes