In [78]: example = response.css("#example")
In [79]: len(example.css("p")[0].xpath(".//following-sibling::div"))
Out[79]: 100
如何编写 XPath 以仅获取下一个 div,一个,而不是所有进入页面末尾的 div?
example.css("p")那些。我已经选择了所有段落,现在我想在第一个、第二个、第三个等之后获取 div。段落。
example.css("p")[0]- 我采用第一段并编写 XPath.xpath(".//following-sibling::div")) 并选择所有 div。
我只需要一个 div,它位于段落之后。
当然,可以开处方[0],但这不是一种选择。
谢谢你。
如果只想提取第一个元素,可以调用选择器
.get()(或者它的别名,.extract_first()在以前版本的Scrapy中常用)+ 如果元素存在但不包含文本(即没有文本):
.get()即使元素存在,也可能返回 None。default=''如果您总是想要一个字符串,请使用: