【发布时间】:2012-06-12 00:02:42
【问题描述】:
我尝试检索gdata.contacts.client 的联系人:
授权:
class ModifyMe(webapp.RequestHandler):
@login_required
def get(self):
"""print contacts"""
current_user = users.get_current_user()
access_token_key = 'access_token_%s' % current_user.user_id()
token = gdata.gauth.ae_load(access_token_key)
gcontacts_client = gdata.contacts.client.ContactsClient(source = SETTINGS['APP_NAME'])
gcontacts_client = token.authorize(gcontacts_client)
根据 API 文档,我试过这个:
contact = gcontacts_client.GetContact('https://www.google.com/m8/feeds/contacts/yohann%40mail.info/base/2e091c5e9b3d60b4')
但我有这个错误:
Traceback (most recent call last):
File "/base/data/home/apps/s~yoyocontacts/2.359462823193148133/main.py", line 246, in PrintContact
contact = gd_client.GetContacts('https://www.google.com/m8/feeds/contacts/yohann%mail.info/base/2e091c5e9b3d60b4')
File "/base/data/home/apps/s~yoyocontacts/2.359462823193148133/gdata/contacts/client.py", line 201, in get_contacts
desired_class=desired_class, **kwargs)
File "/base/data/home/apps/s~yoyocontacts/2.359462823193148133/gdata/client.py", line 640, in get_feed
**kwargs)
File "/base/data/home/apps/s~yoyocontacts/2.359462823193148133/gdata/client.py", line 319, in request
RequestError)
RequestError: Server responded with: 400,
好的,再试一次:
contact = gcontacts_client.GetContact('www.google.com/m8/feeds/contacts/yohann%40mail.info/base/2e091c5e9b3d60b4')
另一个错误:
Traceback (most recent call last):
File "/base/data/home/apps/s~yoyocontacts/2.359462880270555204/main.py", line 246, in PrintContact
contact = gd_client.GetContact('www.google.com/m8/feeds/contacts/yohann%40lepage.info/base/2e091c5e8b3760b4')
File "/base/data/home/apps/s~yoyocontacts/2.359462880270555204/gdata/contacts/client.py", line 89, in get_contact
desired_class=desired_class, **kwargs)
File "/base/data/home/apps/s~yoyocontacts/2.359462880270555204/gdata/client.py", line 652, in get_entry
desired_class=desired_class, **kwargs)
File "/base/data/home/apps/s~yoyocontacts/2.359462880270555204/gdata/client.py", line 267, in request
uri=uri, auth_token=auth_token, http_request=http_request, **kwargs)
File "/base/data/home/apps/s~yoyocontacts/2.359462880270555204/atom/client.py", line 119, in request
http_request.method, str(http_request.uri)))
MissingHost: No host provided in request GET https://Nonewww.google.com/m8/feeds/contacts/yohann%40mail.info/base/2e091c5e8b3760b4
哦等等! https:// 无 www.google.com/m8/feeds/contacts/yohann%40mail.info/base/2e091c5e8b3760b4
如何解决这种行为?为什么 https:// 和 uri 之间有 None ?
PS : feed_groups = gd_client.GetGroup(group_url) 就像一个魅力...
PS:Source file源文件函数ModifyMe
【问题讨论】:
标签: python google-app-engine google-api gdata google-contacts-api