2013-09-23 48 views
0

* *當我發送類似的請求 -如何從谷歌獲取數據使用python中的api鍵?

f = urllib.urlopen(https://www.googleapis.com/plus/v1/people/103777531434977807649/activities/public?key=***************) 
json=f.read() 
print json 

它返回一些這樣的事不是必需的JSON

{ 
"kind": "plus#activityFeed", 
"etag": "\"seVFOlIgH91k2i-GrbizYfaw_AM/chWYjTdvKRLG9yxkeAfrCrofGHk\"", 
"nextPageToken": "CAIQ__________9_IAAoAA", 
"title": "Google+ List of Activities for Collection PUBLIC", 
"items": [] 
} 

我有什麼做的就是正確的反應? ??

這是代碼: 進口JSON

f = urllib.urlopen('https://www.googleapis.com/plus/v1/people/'+id+'/activities /public?key=*****************&maxResults=100')    
    s = f.read()        
    f.close()    
    ss=json.loads(s) 
      print ss 
      try:   
     nextpagetoken=str(ss['nextPageToken']) 
     i=0 
     str_current_datetime=str(datetime.now()) 
     gp_crawldate=str_current_datetime.split(" ")[0] 
     gp_groupid=id 
     db = MySQLdb.connect("localhost","root","****","googleplus") 
     cursor=db.cursor() 

     while i<len(ss['items']): 

      gp_kind=str(ss['items'][i]['kind']) 
      gp_title=str(ss['items'][i]['title'].encode('utf8')) 
      gp_published=str(ss['items'][i]['published'][0:10]) 
          check=int(cool(str(ss['items'][i]['published'][0:19])))#this method is defined in the code 
      gp_activityid=str(ss['items'][i]['id']) 
      gp_actorid=str(ss['items'][i]['actor']['id']) 
      gp_verb=str(ss['items'][i]['verb']) 
      gp_objecttype=str(ss['items'][i]['object']['objectType']) 
      gp_originalcontent=str(ss['items'][i]['object']['content'].encode('utf8')) 
      gp_totalreplies=str(ss['items'][i]['object']['replies']['totalItems']) 
      gp_totalplusone=str(ss['items'][i]['object']['plusoners']['totalItems']) 
      gp_totalreshare=str(ss['items'][i]['object']['resharers']['totalItems']) 
      #gp_geocode=str(ss['items'][i]['geocode']) 
      #gp_placename=str(ss['items'][i]['placeName']) 
      i=i+1 

是在克+ API的任何變化???

+0

'import json' ...然後使用'page = f.read()'和'json_data = json.loads(page)'或類似的...它不會自動發生......您可能希望看看'請求'模塊,這使得訪問HTTP資源可能更好 –

+0

你剛剛告訴我已經完成的事情。但它返回相同的響應。當我通過瀏覽器發送http請求相同的json調用 –

+0

在這種情況下,你會考慮把你正在使用的代碼(你已經完成),並把它作爲一個[編輯]你的問題 –

回答

1

您發佈的回覆是正確回覆。如果items字段是空列表,那麼您提取帖子的用戶可能從未公開發布任何內容。在這種情況下,我確認用戶沒有公開信息,只需訪問他們的個人資料。

相關問題