lxml не может найти элемент, используя селектор CSS - PullRequest
0 голосов
/ 31 марта 2019

Я пытаюсь найти элемент на html-странице, используя селектор css, но lxml не может найти этот элемент.

Пример страницы здесь

CSS-селектор, которыйЯ использую: td.listadvlevo > table > tbody > tr:nth-child(4) > td:nth-child(2) > b

html = etree.HTML(response.content)
sel = CSSSelector("td.listadvlevo > table > tbody > tr:nth-child(4) > td:nth-child(2) > b", translator='html')
print(len(sel(html)))

Вывод вышеуказанного кода будет 0, lxml не найдет ничего.На странице примера он должен найти <b> 4 300 000 Kč</b>

Эти селекторы работают нормально:

  • div.popis
  • div.drobky > a:nth-child(4)
  • div.drobky > a:nth-child(3)

У них та же проблема:

  • table.listainzerat > tbody > tr > td:nth-child(1) > h1
  • td.listadvlevo > table > tbody > tr:nth-child(1) > td:nth-child(2) > b > a
  • td.listadvlevo > table > tbody > tr:nth-child(1) > td:nth-child(2) > a

1 Ответ

0 голосов
/ 01 апреля 2019

Вам не хватает точки:

td.listadvlevo > table > tbody > tr:nth-child(4) > td:nth-child(2) > b
...