1. 程式人生 > >python scrapy抓取返回為json資料格式的內容

python scrapy抓取返回為json資料格式的內容

現在有很多網站的頁面資料都是通過ajax獲取資料,或者介面api的連結,返回json格式的資料,再渲染到頁面。

這時使用Selectors選擇器抓取就行不通了。解決方法,很簡單,使用 json.loads 方法就可以獲取到json資料了。

json資料

{"k":"086,05,11,35,34,45,03,28,087,08,04,六,21點30分","t":"1000","聯絡":"QQ:7136995"}

在Scrapy裡,dmoz_spider.py 檔案parse函式裡呼叫  json.loads。

#coding=utf-8
import scrapy
import json
class DmozSpider(scrapy.Spider):
    name = "dmoz"
    allowed_domains = ["dmoz.org"]
    start_urls = [
        "http://www.test.com/test/get_data" 
    ]

    def parse(self, response):
        
        # 呼叫body_as_unicode()是為了能處理unicode編碼的資料
        sites = json.loads(response.body_as_unicode())
        #print sites['k']
        numbers = sites['k'].split(',')
        print numbers