从Google Contacts API 3.0版获取所有联系人

时间:2014-06-25 08:22:15

标签: python google-app-engine oauth-2.0 google-contacts

我正在尝试从Gmail帐户中检索所有联系人。目前它似乎只是随机获得大约25(我的联系人组中有大约200个联系人)。我注意到的是,这些被检索的联系人都是我很久以前做过的旧联系人。新的联系人似乎没有表现出来。

OAuth2Token

token = gdata.gauth.OAuth2Token(client_id=CLIENT_ID, client_secret=CLIENT_SECRET, scope=SCOPE, user_agent=USER_AGENT)
redirect_url = token.generate_authorize_url(redirect_uri=REDIRECT_URI)

重定向验证

self.redirect(redirect_url)

验证,获取联系人和显示

url = atom.http_core.Uri.parse_uri(self.request.uri)
if 'error' in url.query:
  pass
else:
  token.get_access_token(url.query)

  gd_client = gdata.contacts.client.ContactsClient()
  token.authorize(gd_client)
  feed = gd_client.GetContacts()

for i, entry in enumerate(feed.entry):
  self.response.write(entry.name.full_name)

Developer Contacts Page'运行示例代码'说使用:

  

gd_client =   gdata.contacts.data.ContactsClient(源=' YOUR_APPLICATION_NAME&#39)

但是它一直没有找到找不到ContactsClient的错误。我最终在gdata.contacts.client找到了它。


其他问题 - 我已将USER_AGENT分配给'',我应该放在那里?

1 个答案:

答案 0 :(得分:4)

如果未提供查询参数,则联系人Feed会返回前25个联系人。添加start-index和max-results参数以调整此值。

https://developers.google.com/google-apps/contacts/v3/reference#Parameters

结果中还应该返回页面信息,表明页面上有多少联系人,页面是什么,以及有多少页面。