zu tun
Nach rechts
//*[@id="specialID"]/div[12]/div[2]/h4/text()[1]
Wenn Sie diesen Textelement für jeden „Special ID“ wollte
//*[@id="specialID"]/div/div[2]/h4/text()[1]
: Klick (Kopie, Kopie XPath) auf dem spezifischen Gebiet Sie (in Chrom des Inspektors) wollen, können Sie so etwas wie dieses erhalten
Sie könnten ein anderes Feld auswählen und es werden die Ergebnisse
//*[@id="specialID"]/div/div[2]/h4/text()[1] | //*[@id="specialID"]/div/some/weird/path[95]
Beispiel verbessert werden könnte verschachteln, aber es zeigt den Punkt:
//*[@id="mw-content-text"]/div/ul[1]/li[11]/text()
from lxml import html
import requests
page = requests.get('https://en.wikipedia.org/wiki/Web_scraping')
tree = html.fromstring(page.content)
data = tree.xpath('//*[@id="mw-content-text"]/div/ul[1]/li/a/text() | //*[@id="mw-content-text"]/div/ul[1]/li/text()[1]')
print(len(data))
for i in range(len(data)):
print(data[i])
Dank. Es war das, wonach ich suchte. –
Denken Sie daran, es hat einen optionalen Parameter 'encode' verwenden Sie so:' etree.tostring (xxxxx, encoding = 'Unicode') ' – shellbye
Das ist * äußere * HTML. –