六、python urllib2請求json數據

需要從別的內部網站上獲取數據,使用了python自帶的urllib2

    def getIssue(self, viewId):
        '''
        根據指定的viewId 獲取該需求的完整信息
        @param viewId: 需求的ViewId,例如:XXX-1
        @return: 如果沒有符合條件的需求集合,返回None;否則返回符合條件的需求集合,dict類型
        '''
        url = 'http://aaaa.bbb.cccc/'+viewId
        payload = {'prodKey':'ZZZZZ'}

        data = urllib.urlencode(payload)
        request = urllib2.Request(url, data=data)
        response = urllib2.urlopen(url=request, timeout=15)

        # 由string 類型轉成 dict類型,json.loads 自動轉成unicode編碼;ast.literal_eval編碼不變
        result = json.loads(response.read())


        if int(result['result']) == 1:
            issues = json.loads(result['issue'])

            self.logger.debug(' getIssue:%s ' % issues)
            return issues
        else:
            return None

參考文章:
http://zhuoqiang.me/python-urllib2-usage.html#http

發佈了50 篇原創文章 · 獲贊 4 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章