如何使用Scrapy抓取JSON数据

时间:2018-06-11 20:13:54

标签: python json web-scraping scrapy python-3.6

我正在使用scrapy,我正在尝试使用scrapy shell测试我的选择器,但没有任何工作。我正试图在这个网站上抓取JSON数据。

https://web.archive.org/web/20180604230058/https://api.simon.com/v1.2/tenant?mallId=231&key=40A6F8C3-3678-410D-86A5-BAEE2804C8F2&lw=true

我试图使用选择器

来抓取数据
let samplerDescriptor = MTLSamplerDescriptor()
  samplerDescriptor.normalizedCoordinates = false
  let  kSamplerState = kDevice.makeSamplerState(descriptor: samplerDescriptor)

但是,这似乎不起作用。不确定有什么不对......

理想情况下,我只想从JSON数据中获取所有“Name:XXX”元素。所以如果你知道如何选择那些,那也是非常有用的!

目前我的代码看起来像这样

   response.css("body > pre::text").extract()

1 个答案:

答案 0 :(得分:1)

由于内容位于iframe内,因此它是一个单独的页面,您必须先导航到iframe。像一个链接,类似的东西:

urls = response.css('iframe::attr(src)').extract()
for url in urls :
    yield scrapy.Request(url...., target=parse_iframe)

然后定义一个新的parse_iframe方法来解析iframes响应。