如何使用GraphAPI从Facebook群组中检索照片?

18

我想使用GraphAPI从Facebook小组中检索照片。根据FB文档,我没有看到与照片相关的连接。我希望能够获取这些照片以及上传它们的用户。


群组有没有照片部分在第一位?:s - ifaour
我想做同样的事情,但似乎这是图形 API 的限制。 - activout.se
图形接口(Graph API) 不支持该功能。 - wathmal
似乎无法再这样做了,“更新于2018年4月25日,群组动态。不再可能显示来自Facebook群组的任何内容。仍然可以显示来自公共Facebook页面的内容。” 这是来自一个曾经能够实现此功能的Facebook插件的常见问题解答。 - Pablo
5个回答

12

Graph API:

http://graph.facebook.com/GROUP_ID/?fields=name,descriptionalbums

返回结果。

{
  "name": "Group name",
  "description": "Group description",
  "id": "GROUP_ID",
  "albums": {
    "data": [
      {
        "id": "GROUP_ALBUM_ID",
        "name": "GROUP_ALBUM_NAME",
        "link": "GROUP_ALBUM_LINK",
        "created": 1352388257,
        "modified": 1352388257,
        "cover_pid": 444427468954616,
        "count": 22
      }
    ],
    "paging": {
      "next": "https://graph.facebook.com/GROUP_ID/albums?limit=25&offset=25"
    }
  }
}

接下来的查询

http://graph.facebook.com/GROUP_ALBUM_ID/photos?fields=picture,source,name&type=uploaded


3
我尝试做同样的事情,但似乎完全不起作用。相册甚至似乎不是一个有效的参数。 - Haru
3
在Facebook上这个不再起作用。该群组没有名为相册的连接。 - badbod99
这还能用吗?在2018年4月25日,一个做这件事的Facebook插件声称由于Facebook的更改,它不能再做了。 - Pablo

4

我已经对同样的问题进行了一些调查。

我们有一个群相册,其网址为:

https://www.facebook.com/media/set/?set=oa.10150651435446985

因此,ID似乎是oa.10150651435446985。

另一个空相册得到了集合ID oa.10150652583791985

在相同的组ID 10150652589396985中有一个注释

注意ID的相似性。

直接链接:http://facebook.com/10150651435446985 可以访问该相册。

该相册由用户1128233556创建,groupid为184760601984。

其他独立的(不在相册中)小组照片位于“set” o.184760601984,其中数字代表小组ID。

那么“o”和“oa”代表什么? a = album,o =?

图片的URL如下:https://fbcdn-sphotos-a.akamaihd.net/hphotos-ak-ash4/s720x720/420015_3293876662264_1128233556_33234982_110700674_n.jpg

420015_3293876662264_1128233556_33234982_110700674
??????_PHOTOID_______USER_______????_____?????????

谁能从这些中得到什么有用的呢?

似乎你有一些更适合作为新问题而不是回答这个问题的东西在这里... - Zach Lysobey

3
我也有同样的问题/这是我的部分答案,但仍然有点hack:
可以通过FQL group.stream或GraphAPI group.feed检索发布在小组中的照片(通过facebook graphApi探索器或fql查询/多查询测试控制台进行实验)。这样,您可以检索所有所需信息,包括用于检索照片的有效ID和从图形中检索对象的ID。
但是,这仅适用于单个照片。
由于我的先前答案已被删除,我不会在此处重新发布它,但是提醒您,在此线程中详细介绍了我的类似问题 FQL或GraphAPI无法检索发布在小组中的照片相册或视频,如果解决了此问题,可能甚至有助于解决此问题。
Thomas

嗨,Thomas,我有同样的问题。你能进一步给我建议吗?谢谢。 - Hoa Vu

1
我希望能找到更直接的方法,但这个方法似乎很有前途:
使用 get /me/groups 或 /me?fields=groups 获取群组 ID。
然后使用 get {group_id}/feed?type=photo 获取该群组的照片,但你真正得到的只是照片的 ID(返回为 object_id)。
然后对于每张照片,你可以使用 get /{object_id} 获取图片各种尺寸的链接。
我在 Facebook Graph Explorer 中进行了此项研究,因此请记住这一点,当您尝试实现它时。
Rob

1

我认为群组中的相册与个人主页上的相册不同,图片有aid =“0”,即使它们是相册的一部分。

我使用了下面的这张图片:

https://www.facebook.com/photo.php?fbid=10151350034089218 是图片的链接。你可以猜到我从哪里得到了object_ID。

在这个例子中,10151350034089218就是属于我的群组"T_Group"相册中的一个图片的object_ID。该群组的链接是https://www.facebook.com/groups/217697621700825/

然后你可以运行FQL查询。

SELECT aid 
  FROM photo 
 WHERE object_id = 10151350034089218

你将会得到

aid
====
0

尽管它是“休·劳瑞”专辑的一部分。

我在我的个人资料相册中尝试了相同的FQL查询,并且它们总是返回一个aid,而不是0。

我计划在Facebook上发布漏洞,希望我能得到修复。除非它正在按预期运行。

我尝试过:

SELECT pid 
  FROM photo_tag 
 WHERE subject =217697621700825

...我得到了发布在群组页面上的照片的PID,而不是相册中的图片。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接