我正在尝试解析主属性页https://www.realtyatlas.co.za/search?areas%5B0%5D%5Btown%5D=Bellville&status=For%20Sale,更准确地说,我想从这里的属性类中提取href,并创建以下链接:
<div class="col-md-4">
<a class="property-item__wrap" href="/loevenstein-apartment-for-sale-1917472">
然而,我尝试过的所有组合都没有结果。我也知道API(https://jf6e1ij07f.execute-api.eu-west-1.amazonaws.com/p/search),但是,在响应中,我没有看到属性的URL,这是没有用的。我错过了什么或任何关于我做错了什么的想法吗?
下面是一些代码:
for prop in response.xpath("//div[@class='col-md-4']"):
... link = prop.xpath("./a[@class='property-item__wrap']/@href").get()
1条答案
按热度按时间jm81lzqq1#
正如您已经发现的那样,属性信息来自您提到的API调用,而不是直接嵌入到您正在向其执行请求的站点中(由于javascript呈现),因此您需要直接从您的零碎请求中调用API来获取该信息(它是一个包含某些数据的POST请求,因此您需要自己构建它)
我可能是错的,但看起来这个站点是动态生成URL的,这取决于它提供的属性类型,所以您仍然可以使用来自API的数据自己创建URL:
其中,以下变量可以替换为来自API的变量