链接到下一页的CSS选择器在Scrapy shell中返回空列表



我是新来的。我试图从这个网站链接到下一页https://book24.ru/knigi-bestsellery/?section_id=1592

html是什么样子的:在这里输入图像描述

在scrapy shell中,我写了这个命令:

response.css('li.pagination__button-item._next a::attr(href)')

返回一个空列表。

我也试过

response.css('a.pagination__item._link._button._next.smartLink')

但它也返回一个空列表。

我将感激你的帮助!

这个页面是用JavaScript生成的,用'view(response)'看看效果如何。

# with css:
In [1]: response.css('head > link:nth-child(28) ::attr(href)').get()                                                   
Out[1]: 'https://book24.ru/knigi-bestsellery/page-2/'
# with xpath:
In [2]: response.xpath('//link[@rel="next"]/@href').get()
Out[2]: 'https://book24.ru/knigi-bestsellery/page-2/'

我想添加到@SuperUser的答案。看到网站通过JavaScript加载HTML,请阅读如何处理JavaScript网站的文档。scrapy-playwright是一个最近的库,我发现在抓取JS渲染网站时非常快速和易于使用。

相关内容

  • 没有找到相关文章