使用YQL获取Yahoo联系人姓名和电子邮件地址

问题描述:

我正在尝试构建一个Web应用程序,用户可以使用他们的电子邮件帐户(就像facebook)邀请他们的朋友。我使用OAuth,以便用户不需要在我的应用程序中输入密码。问题是,我无法弄清楚什么是正确的YQL查询来从雅虎社交表中获取联系人姓名和电子邮件地址,并通过facebook的查找朋友功能获得相同的结果。使用YQL获取Yahoo联系人姓名和电子邮件地址

起初,我用这个:

SELECT * FROM social.contacts(0, 500) WHERE guid=me 

与此查询我希望我能登录的用户当前的所有联系人一次。但是,在解析并选择仅有电子邮件字段的记录后,结果列表远远少于我使用Facebook的查找朋友时的结果列表。我猜Facebook不仅使用联系人表格,而且还使用配置文件表格,因为我在授权访问我的私人数据时在雅虎授权页面中看到它。

那么使用这两个表得到所有联系人姓名和电子邮件地址的正确YQL查询是什么?

在尝试了一些测试之后,我发现当我从我的雅虎联系人中导入电子邮件地址时,Facebook会在联系人没有电子邮件字段时自动猜测联系人的电子邮件地址,在其yahooid字段中添加@yahoo.com。正如我所看到的,这是完全错误的。因为有yahooid,说“john123”,相关的电子邮件可能有一个国际域名一样[email protected][email protected]

我有一个朋友我雅虎联系人列表。他有一个yahooid,它与@yahoo.com.vn电子邮件地址相关联。在将我的雅虎联系人导入Facebook之前,我确保他的联系人条目中没有电子邮件字段,只是名称和yahooid字段。 Facebook导入Facebook之后,Facebook将我的朋友的电子邮件地址确定为@yahoo.com电子邮件。当然,Facebook的邀请邮件永远不会到达他。

所以,我的问题的答案是:我的YQL没有任何问题。 Facebook可以获取比我更多的电子邮件地址,但其中许多地址不正确。