使用gdata python客户端和OAuth2令牌从Google联系人API检索所有(其他)联系人?
在搜索中,列出Gmail/GSuite用户的所有联系人(包括使用gdata python客户端和OAuth2令牌从Google联系人API检索所有(其他)联系人?,python,google-oauth,gdata,gdata-python-client,Python,Google Oauth,Gdata,Gdata Python Client,在搜索中,列出Gmail/GSuite用户的所有联系人(包括其他)。当前的人员API不支持此功能,请注意以下线程: 在此处找到此线程,确认API中的此类更改: 谷歌团队注意到: 此处参考优先顺序的票证请求: 深入潜水时,Contacts API似乎仍在运行,可以通过gdata使用 然而,基于以下repo(),关于使用OAuth2(userID,token,refreshttoken)实现的文档有限,这是当前获取其他联系人列表的绊脚石 任何帮助都将不胜感激,谢谢 我在7年前发现了这个帖子(?)
其他
)。当前的人员API
不支持此功能,请注意以下线程:
- 在此处找到此线程,确认API中的此类更改:
- 谷歌团队注意到:
- 此处参考优先顺序的票证请求:
gdata使用
然而,基于以下repo(),关于使用OAuth2(userID
,token
,refreshttoken
)实现的文档有限,这是当前获取其他联系人列表的绊脚石
任何帮助都将不胜感激,谢谢 我在7年前发现了这个帖子(?)。下面的实际示例代码,我必须对其进行一些修改才能使其正常工作:
import gdata
import gdata.gauth
import gdata.contacts.client
import json
import requests
GOOGLE_CLIENT_ID = 'GOOGLE_CLIENT_ID' # Provided in the APIs console
GOOGLE_CLIENT_SECRET = 'GOOGLE_CLIENT_SECRET' # Provided in the APIs console
ACCESS_TOKEN = 'ACCESS_TOKEN' # given from a prior OAuth2 workflow, along with userID and refreshToken
REFRESH_TOKEN = 'REFRESH_TOKEN'
# GData with access token
token = gdata.gauth.OAuth2Token(
client_id=GOOGLE_CLIENT_ID,
client_secret=GOOGLE_CLIENT_SECRET,
scope='https://www.google.com/m8/feeds',
user_agent='app.testing',
access_token=ACCESS_TOKEN,
refresh_token=REFRESH_TOKEN)
contact_client = gdata.contacts.client.ContactsClient()
token.authorize(contact_client)
feed = contact_client.GetContacts()
for entry in feed.entry:
entry.title.text
for e in entry.email:
e.address
# JSON with access token
r = requests.get('https://www.google.com/m8/feeds/contacts/default/full?access_token=%s&alt=json&max-results=50&start-index=0' % (access_token))
data = json.loads(r.text)
print data