获取Google联系人API v3.0的所有联系人
我正在尝试从我的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)
在开发者联系人页面上,'运行示例代码'部分提到要使用:
gd_client = gdata.contacts.data.ContactsClient(source='YOUR_APPLICATION_NAME')
但是它一直报错说找不到ContactsClient。最后我在gdata.contacts.client
中找到了它。
另外一个问题 - 我已经把USER_AGENT
设置为'',那我应该在这里放什么呢?
1 个回答
4
当你没有提供任何查询参数时,联系人信息会返回前25个联系人。你可以通过添加起始索引和最大结果参数来调整这个数量。
https://developers.google.com/google-apps/contacts/v3/reference#Parameters
结果中还会包含一些页面信息,告诉你这一页有多少联系人、这是第几页,以及还有多少页。