我见过this question但我想要的是不同的 .
我想从一般的URL获取Facebook ID(因此如果它有Like按钮则有条件) . 我想使用Graph API获取Facebook页面的Facebook ID .
请注意,Facebook页面可以有多种格式,例如:
http://www.facebook.com/my_page_name
http://www.facebook.com/pages/my_page_name
http://www.facebook.com/my_page_ID
我知道我可以做一些正则表达式获取my_page名称或my_page_ID,但我想知道是否有人知道GraphAPI是否支持我想要的 .
7 回答
这是一个如何获取ID的PHP示例 .
在我看来,你所描述的最简单的解决方案是从你使用lastIndexOf("/")(大多数语言具有等价物)的url中获取id / name,然后得到"https://graph.facebook.com/" id .
此url返回的数据具有id(即:6708787004)和用户名(即:southpark),因此无论使用哪个标识符(使用lastIndexOf从url中提取的内容),都应该得到相同的结果 .
编辑
这段代码:
两者应该相同(对于相同数据的结果):
和
(你显然需要实现getGraphData方法) .
此外,问题中的第二个网址表单不是页面的有效网址,至少不是我的测试,我得到:
问题的答案在上面发布,但下面显示的方法工作正常,我们没有必要在Facebook页面上执行
regex
网址我通过这种方法得到了答案
any_fb_page_url可以是以下任何类型
这也列在上面的问题中
此代码在JS控制台上测试Facebook Developers site tools
您可以使用以下api获取页面ID
https://graph.facebook.com/v2.7/smhackapp?fields=id,name,fan_count,picture,is_verified&access_token= access_token &format = json
Reference image
这个答案考虑到URL可以以尾部斜杠结束,Facebook事件页面现在似乎在其URL中 .
您可以在 python 中使用 Requests 和 re 模块
码:
输出:
也许你可以查看https://developers.facebook.com/docs/reference/api/#searching文档:搜索几种类型,如果你找到你想要的东西,那就去那里 .