5

许多网站,如 twitter、facebook 和其他网站,让用户输入他们的电子邮件 ID 和密码,并据此“提取”联系人。

有谁知道这是怎么做到的?

4

8 回答 8

4

撇开道德问题不谈,有一个商业图书馆可以为您做到这一点:http ://www.octazen.com/product_abimporter.php

该库可用于 PHP、.NET、Java、Ruby 和 ColdFusion。它支持从数十种不同的服务(包括所有主要服务)导入联系人。

许可证只需大约 100 美元,运行良好,并且(使用 Java 版本)只需要这行代码即可从任何受支持的服务中导入联系人:

List<Contact> contacts = SimpleAddressBookImporter.fetchContacts(emailAddress, password)

他们有另一个库,可以从社交网络导入朋友列表,虽然我没有尝试过。

于 2008-09-17T21:01:31.400 回答
4

他们登录您的帐户并抓取内容,或使用公共 API。无论哪种方式,这都不是我自己实施或使用的方法,因为我不会相信任何人拥有我的凭据。而且我认为它教会用户不要对他们的凭据保密。

于 2008-09-17T20:39:57.490 回答
1

这就是OAuth的设计目的。 谷歌已经开始采用它。它没有与更典型的抓取相同的信任问题。

不幸的是,就目前而言,人们倾向于只询问您的密码,以您的身份登录并抓取信息,这远不安全,因为它使网站可以完全访问您的帐户。这不是你应该复制的东西,尽可能使用 OAuth 或等效的东西。

于 2008-09-17T21:18:27.460 回答
1

有可用的 API:

雅虎 --> http://developer.yahoo.com/addressbook/

谷歌 --> http://code.google.com/apis/contacts/

AOL(还没有)。

于 2008-09-17T22:04:08.253 回答
0

我假设他们通过 POP3、公共 API 登录您的电子邮件帐户,或者他们知道网络邮件系统的 html 格式并阅读 DOM。然后他们会找到您接收和发送电子邮件的任何人,并通过它自己的用户数据库查找匹配项。

于 2008-09-17T20:40:43.960 回答
0

是的,我同意。使用您的电子邮件凭据信任站点是不安全的。尤其是在 gmail 存档器(http://it.slashdot.org/article.pl?sid=08/03/11/1723206&from=rss)发现了什么之后

但仅从程序化 POV 来看,我想知道他们是如何做到这一点的。也许Gmail hotmail和所有其他人确实有用户可以使用的API......我猜需要更多地研究它。

于 2008-09-17T20:52:53.277 回答
0

联系人列表Java库易于使用,可与 Gmail、Yahoo!、Yahoo、Hotmail 和 MSN 配合使用。

于 2011-03-28T20:04:37.333 回答
-1

对于 gmail:

http://sourceforge.net/projects/gmail-api

http://johnvey.com/features/gmailapi/

于 2008-09-17T20:47:49.607 回答