facebook - 如何获取/嵌入 Facebook 的照片/视频/状态?

标签 facebook facebook-javascript-sdk web-scraping urlfetch oembed

我尝试嵌入 Facebook 的照片、视频甚至状态,但无法从 Facebook 获取任何内容,

例如,我正在尝试嵌入此照片帖子:https://www.facebook.com/photo.php?fbid=441525965965373&set=a.310879465696691.71407.295546697229968&type=1&theater

首先(尝试 oEmbed 服务):

  • Facebook 不支持 oEmbed接口(interface)
  • 此外,我认为 Facebook 正在阻止网络抓取

一些服务如Noembed (或 Embedly )可以很好地嵌入来自 Twitter、Youtube 甚至其他不支持 oEmbed 接口(interface)的网站的内容,但它们不会从 Facebook 检索任何内容,例如,尝试使用以下方式调用服务:

http://noembed.com/embed?url=https%3A%2F%2Fwww.facebook.com%2Fphoto.php%3Ffbid%3D441525965965373%26set%3Da.310879465696691.71407.295546697229968%26type%3D1%26theater

将给出:

{
    url: "https://www.facebook.com/photo.php?fbid=441525965965373&set=a.310879465696691.71407.295546697229968&type=1&theater",
    error: "no matching providers found"
}

第二(尝试 YQL):

当尝试使用 Yahoo 的 YQL 获取它时,如下所示:

http://query.yahooapis.com/v1/public/yql?q=SELECT%20*%20FROM%20html%20WHERE%20url='https%3A%2F%2Fwww.facebook.com%2Fphoto.php%3Ffbid%3D441525965965373%26set%3Da.310879465696691.71407.295546697229968%26type%3D1%26theater'%20and%20xpath='//meta|//title|//link'%20and%20compat='html5'&format=json

它不会给出任何结果,你甚至可以在 YQL console 中尝试它

问题是:

到底怎么可能有人从 Facebook 获取任何东西?

最佳答案

最后:),Facebook 现在支持一项新功能 enables us to embed "Public Posts" ,所以简短回答以及我们需要了解的所有信息 Embedded Posts在此链接中:

https://developers.facebook.com/docs/plugins/embedded-posts/

但要在此处嵌入答案;),让我们执行以下操作:

1- 在您的页面上包含 JavaScript SDK 一次,最好是在打开之后立即添加 <body>标签(不要忘记将下面的 appId 替换为您自己的应用程序 ID)

<div id="fb-root"></div>
<script>(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_US/all.js#xfbml=1&appId=334259852684024";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

2- 将插件代码放置在您希望插件出现在页面上的任何位置。

<div class="fb-post" data-href="https://www.facebook.com/FacebookDevelopers/posts/10151471074398553"></div>

关于facebook - 如何获取/嵌入 Facebook 的照片/视频/状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18807005/

相关文章:

facebook - Facebook Instant Article(FBIA)的ia_document对象(用于分析)及其属性的详细信息?

Rvest:获取节点文本而不是其子文本

javascript - Facebook javascript 登录 sdk,提要未定义

javascript - 刷新帐户工具包访问 token

facebook - 网页中的“赞”和“分享”按钮会导致 javascript 警告和 php 错误

javascript - FB 和 LinkedIn API 无法在私有(private)窗口模式下工作-FF

html - 如何从 span 标签中抓取在线数据

python - 过滤掉 'display:none' 作为标记属性或在其 CSS 中的 HTML 元素

html - Facebook 发送按钮对话框 z-index 问题

javascript - 测试 'like' 按钮是否链接到 Facebook 仅可访问服务器上的内容对域有负面影响