1

是否有官方方法可以从雅虎的用户通讯录中导入联系人?

对于谷歌来说,它真的很简单:

import gdata
contacts_service = gdata.contacts.service.ContactsService()
contacts_service.email = email
contacts_service.password = password
contacts_service.ProgrammaticLogin()
query = gdata.contacts.service.ContactsQuery()
query.max_results = GOOGLE_CONTACTS_MAX_RESULTS
entries = contacts_service.GetContactsFeed(query.ToUri())

雅虎有这么简单的方法吗?

我找到了一些不使用 api 的解决方案,对于严肃的游戏来说看起来很奇怪 - 例如ContactGrabber我在django-friends app中找到了需要 BBAuth Token 的解决方案。

但是,我想要从雅虎获取用户联系人的正式、清晰的方式。它存在吗?

UPD:最后,我避免使用 yahoo api,并出于我的目的使用django-openinviter

但我仍在寻找使用 api 导入用户联系人的示例。

4

2 回答 2

4

Contacts REST API非常简单。您要访问的网址是

http://social.yahooapis.com/v1/user/{guid}/contacts.json

这是一个将为您提取内容的脚本。您可以扩展它以包括身份验证。

import urllib2
import json

def get_contacts(guid):
    url = 'http://social.yahooapis.com/v1/user/{}/contacts.json'.format(guid)
    page = urllib2.urlopen(url)
    return json.load(page)['contacts']['contact']
于 2011-10-20T01:35:19.803 回答
2

雅虎在这里有一些关于如何使用 Python 访问其 API 的不错的文档。那里的信息将告诉您如何通过 YQL 使用 http 请求访问 Yahoo API。这意味着直接执行 http GET 和 POST 并自己解析结果。但是,他们也有一个 Python 库,可以在此处包装这些调用,但它自 2009 年 10 月 13 日以来一直没有更新,因此您的里程可能会有所不同。

于 2011-10-07T12:02:19.390 回答