【问题标题】:Parse property page URLs using xpath使用 xpath 解析属性页 URL
【发布时间】:2020-12-16 12:39:32
【问题描述】:

我正在尝试解析主属性页https://www.realtyatlas.co.za/search?areas%5B0%5D%5Btown%5D=Bellville&status=For%20Sale,更准确地说,我想从这里的属性类中提取href,并制作一个follow link:

<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()

提前谢谢你!

【问题讨论】:

    标签: javascript python xpath web-scraping scrapy


    【解决方案1】:

    正如您已经发现的那样,属性信息来自您提到的 API 调用,而不是直接嵌入到您正在请求的站点中(因为 javascript 呈现),因此您需要直接从您的 scrapy 请求中调用 API获取该信息(这是一个包含某些数据的 POST 请求,因此您需要自己构建)

    我可能是错的,但看起来这个网站会根据它提供的属性类型动态生成 URL,因此您仍然可以使用来自 API 的数据自己创建 URL:

    https://www.realtyatlas.co.za/{suburb}-{propertyType}-{propertyStatus}-{propertyid}
    

    以下变量可以替换为来自 API 的变量

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-02-22
      • 1970-01-01
      • 1970-01-01
      • 2023-03-21
      • 2023-04-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多