lxml无法使用CSS选择器找到元素

时间:2019-03-31 15:28:00

标签: python python-3.x css-selectors lxml

我正在尝试使用css选择器在html页面中找到元素,但是lxml找不到该元素。

示例页面here

我正在使用的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 :(得分:0)

您缺少一个点:

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