2016-01-28 27 views
5

Al momento sto raschiando alcuni dati da un altro sito Web e sto avendo problemi su come ottenere solo i primi 5 elementi.XPath: selezionare i primi 5 elementi

$travelguide_row = 
$travelguide_xpath->query('//div[@class="traveltips"]//span|//div[@class="traveltips"]//p'); 

Posso aggiungere più sintassi dopo //span e //p? Se sì, come?

risposta

6

Per raggiungere tale obiettivo è possibile utilizzare l'espressione del predicato [position() < 6]. Il seguente XPath dovrebbe ottenere i primi 5 elementi appaiati per la tua espressione XPath originale:

(//div[@class="traveltips"]//span|//div[@class="traveltips"]//p)[position() < 6] 
+2

Ho provato questa espressione, ma non sapevo ho potuto mettere il mio codice tra parentesi! :) Molte grazie! Ho imparato qualcosa di nuovo. – Mae

Problemi correlati