Выскабливание текста; Я не уверен, что элемент Google Chrome Inspect дает мне правильный XPath. Где я могу найти правильный путь? - PullRequest
0 голосов
/ 02 апреля 2020

Здесь я хочу поковыряться на сайте под названием "fundsnetservices.com». В частности, я хочу получить текст под каждой программой - это примерно столько, сколько стоит текст абзаца.

Используя метод Google Chrome Inspect, я смог получить это ...

'/ html / body / div [3] / div / div / div [1] / div / p [2] / text ()'

... в качестве xpath. Однако каждый раз, когда я распечатываю текст, он возвращает []. Почему это может быть?

response = urllib.request.urlopen('http://www.fundsnetservices.com/searchresult/30/International-Grants-&-Funders/18.html')
tree = etree.HTML(response.read().decode('utf-16'))
text = tree.xpath('/html/body/div[3]/div/div/div[1]/div/p[2]/text()')

1 Ответ

1 голос
/ 03 апреля 2020

Кажется, ваш код возвращает пробельные узлы. Исправьте ваш XPath с помощью:

//p[@class="tdclass"]/text()[3]
...