我是新来的。我试图从这个网站链接到下一页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渲染网站时非常快速和易于使用。