我正在尝试获取所有具有特定类名的结果。循环的Xpath只给出第一个结果。
这是代码:
for links in response.xpath("//*[@id='main']/div/div[contains(@class, 'ZINbbc xpd O9g5cc uUPGi')]"):
link = links.xpath("//div[contains(@class, 'kCrYT')]/a/@href").get()
header = links.xpath("//div[contains(@class, 'kCrYT')]/a/h3/div/text()").get()
我也尝试过将[position()>=3 and position(<=14]
添加到第一个div中。
编辑:这是HTML:
<div id="main">
<div>...</div>(Don't need this one)
<styles>...</styles>
<div>...</div>
<div class="ZINbbc xpd O9g5cc uUPGi">
<div class="kCrYT">
<a href="link">
<h3 class="zBAuLc">
<div class="BNeawe vvjwJb AP7Wnd">Title</div>
</h3>
.......
我敢肯定,单斜杠表示绝对路径。
https://docs.scrapy.org/en/latest/topics/selectors.html#working-具有xpaths
如果XPath中使用了两次双斜杠(//(,这意味着什么?