【问题标题】:"My Contacts" group google contacts“我的联系人”组谷歌联系人
【发布时间】:2011-09-26 14:10:19
【问题描述】:

我刚刚编写了一个小的 python 脚本,它可以获取我的 google 联系人列表中的所有组,但是由于某种原因,“我的联系人”没有出现在其中。我正在使用 3.0 api,并且 2.0 api 也有类似的问题。以下是取自Google 2.0 Contacts documentation 的例外。

例如,要确定“我的联系人”组的 ID,您可以检索给定用户的所有组的提要,然后找到具有子元素的组条目,并获取该组条目元素的值。

目前我得到的响应在任何地方都没有 gContact:systemGroup 标记。我应该如何继续以获得特定组的组 ID?

我的脚本如下图:-

user="blah@gmail.com"
pas="blah"
data={"Email":user, "Passwd":pas, "service": "cp", "source":"tester"}
import urllib
data = urllib.urlencode(data)

import urllib2
req = urllib2.Request('https://www.google.com/accounts/ClientLogin', data)
resp = urllib2.urlopen(req)
x = resp.read()

auth=a[-1].split('=')[-1]
req = urllib2.Request('https://www.google.com/m8/feeds/groups/blah@gmail.com/full/', headers={'Authorization':'GoogleLogin auth='+auth})
resp = urllib2.urlopen(req)
x = resp.read()
print x
print "My Contacts" in x
print "gContact:systemGroup" in x

关于如何解决这个问题的一些线索会很棒,谢谢。

【问题讨论】:

标签: python google-contacts-api


【解决方案1】:

为什么不直接使用Python Client Library?它包括一组完全你想要的方法。

import gdata.contacts.client
import gdata.contacts.data # you might also need atom.data, gdata.data

gd_client = gdata.contacts.data.ContactsClient(source='eQuiNoX_Contacts')
gd_client.ClientLogin('equinox@gmail.com', '**password**')

feed = gd_client.GetGroups()
    for entry in feed.entry:
        print 'Atom Id: %s' % group.id.text
        print 'Group Name: %s' % group.title.text
        if not entry.system_group:
            print 'Edit Link: %s' % entry.GetEditLink().href
            print 'ETag: %s' % entry.etag
        else:
            print 'System Group Id: %s' % entry.system_group.id

这能解决您的问题吗?在某种程度上,它更干净。如果您仍然遇到问题:

...由于某种原因,“我的联系人”没有显示...

然后从文档中:

注意:Feed 可能不包含用户的所有联系人组,因为返回的结果数量存在默认限制。有关详细信息,请参阅Retrieving contact groups using query parameters 中的 max-results 查询参数。

注意:newer documentation 包含示例 Python 代码和协议说明; Python 代码帮助我理解通用协议。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-05-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多