Scrapy:抓取返回数据格式为JSON的网站内容

有些网站的数据是通过ajax请求获取的,或者提供了json格式的api。

比如对于如下的数据:

[javascript]  view plain  copy
 
  1. {  
  2.         {  
  3.             "url""http://www.techbrood.com/news/1",  
  4.             "author""iefreer",  
  5.             "title""techbrood Co. test 1"  
  6.         },  
  7.         {  
  8.             "url""http://www.techbrood.com/news/2",  
  9.             "author""ryan.chen",  
  10.             "title""techbrood Co. test 2"  
  11.         }  
  12. }  

在Scrapy里,只要简单改写下parse函数就行:

[python]  view plain  copy
 
  1. def parse(self, response):  
  2.     sites = json.loads(response.body_as_unicode())  
  3.     for site in sites:  
  4.         print site['url']  


调用body_as_unicode()是为了能处理unicode编码的数据。

你可能感兴趣的:(Scrapy:抓取返回数据格式为JSON的网站内容)