CSS 选择器找不到具有提供的类的元素



我试图废弃的html看起来像这样:

<a class="mobile_board_link" href="board.php"><b>...</b></a>

我为元素创建了以下 css 选择器:

.mobile_board_link a::attr(href)

但是如果我在 scrapy shell 中执行它,它甚至找不到任何带有类移动板链接的元素。我做错了什么?

这是您的选择器:

.mobile_board_link a::attr(href)

问题:

  • 空格意味着后代,因此您尝试在.mobile_board_link内查找定位点,而不是查找具有该类的定位点
  • (正如评论部分所指出的那样,
  • 后面的斜体文本是错误的,并且反映在底部的这篇文章中)正如评论部分已经指出的那样,您需要[href]而不是::attr(href)

所以这就是你的选择器应该是什么样子的:

a[href].mobile_board_link

编辑:

显然::attr(href)在 Scrapy 中是正确的,因此这是一个正确的选择器:

a.mobile_board_link::attr(href)

最新更新