我无法使用scrapy提取链接

问题描述

我需要帮助提取页面中的链接https://www.remax.pt/comprar-empreendimentos?searchQueryState={%22page%22:1,%22sort%22:{%22fieldToSort%22:%22PublishDate%22,%22order%22:1}}

HTML code

Results from shell

解决方法

您可以缩短它,您不必从顶部元素定位到您的目标。这样就更容易调试了。

response.css('div.developments-search-details-component a::attr(href)').get()

如果您愿意,可以将其更改为 Xpath。但通常当您尝试定位一个元素并返回 null 或空列表时,这是因为输入错误或因为该元素在页面加载后动态呈现。

为了调试,我通常会从树中更高的元素开始,看看它是否存在。 在这种情况下,您可以尝试:

response.css('div.developments-search-details-component').get()

首先看看它是否有效。