【问题标题】:Save facebook webpage after user authorization using PHP or Javascript用户授权后使用 PHP 或 Javascript 保存 facebook 网页
【发布时间】:2013-01-10 17:56:48
【问题描述】:

登录 facebook 后,我想保存 https://www.facebook.com/pages 的内容(没有特定的页面 id,而是您看到的 url,并查看建议的收藏页面,而不是我喜欢或选择的页面)

我不是试图获取用户管理员的页面列表,也不是他们喜欢的页面列表。所以 /me/accounts 或 /me/likes 没有用。我尝试获取 Facebook 中添加的所有页面,从我上次访问此 url 开始,它建议它们作为我可能喜欢的页面

我正在使用http://developers.facebook.com/docs/reference/php/ 的示例,并获取我拥有的用户的个人资料。到目前为止一切顺利。

我尝试使用

检索数据
$facebook->api('/me/pages'), 
$facebook->api('/pages'), 
$facebook->api('/pages'), 
$facebook->api('/id=USER_ID/pages') 

等等,但所有这些都是错误的或使用 Graph API 页面?id=USER_ID 存在不支持的获取/发布请求。

正如 Igy 所说“建议页面不是 API 的功能,只有 facebook.com 界面”

我尝试的其他方法是使用 file_get_contents 保存 url。作为网址,我使用了

ini_set('user_agent','MSIE 4\.0b2;'); //to pretend that I am a browser, it works
http://www.facebook.com/pages?id=USER_ID and
http://www.facebook.com/pages

虽然保存已正确完成,但 facebook 无法识别授权并显示我想要的页面,但对于未登录的用户。

我在 Facebook JavaScript 测试控制台中尝试了 javascript,登录后它会打开识别授权的页面。代码是

<div id="authResponse"></div>
<script>
var
  div         = document.getElementById('authResponse'),
  showAuthRecord = function(response) {
    if (!response.authResponse) {
      div.innerHTML = '<em>Not Connected</em>';
    } else {
      var html = '<table>';
      for (var key in response.authResponse) {
        html += (
          '<tr>' +
            '<th>' + key + '</th>' +
            '<td>' + response.authResponse[key] + '</td>' +
          '</tr>'
        );
      }
      div.innerHTML = html;
    }
  };
FB.getLoginStatus(function(response) {
  showAuthRecord(response);
  FB.Event.subscribe('auth.authResponseChange', showAuthRecord);
});

window.open('https://www.facebook.com/pages','mywin','left=20,top=20,width=500,height=500,toolbar=1,resizable=0');
</script>

有没有办法在 PHP、Graph API 或 FQL Query 中做到这一点?或者添加javascript,代码来保存我打开的页面?我还没有找到任何东西。

【问题讨论】:

  • 为什么不直接使用 API?
  • 我使用了它,但它不被识别,没有 /me/pages, /pages, /pages, /id=USER_ID/pages 。你对 API 有什么建议?
  • 你想得到什么?用户管理的页面列表,还是他们喜欢的页面列表? /me/accounts/me/likes - 你看过 User 文档吗?
  • 没有你提到的。我尝试获取 Facebook 中添加的所有页面,从我上次访问此 url 开始,它建议它们作为我可能喜欢的页面
  • 推荐页面不是 API 的功能,只有 facebook.com 接口

标签: php javascript facebook facebook-javascript-sdk


【解决方案1】:

您要求的内容无法通过 Facebook 平台获得。并且尝试抓取页面以从中提取信息也违反 Facebook terms

您不会收集用户的内容或信息,或以其他方式 使用自动化方式(例如收割机器人、 机器人、蜘蛛或刮刀)未经我们事先许可。

另外你不能向用户询问他们的密码和登录信息,请参考Facebook Platform Policies

您不得包含代理、请求或收集的功能 Facebook 用户名或密码。

【讨论】:

  • 我同意你的观点,事实是我想提取只有我看到的信息,只有我的帐户。
猜你喜欢
  • 1970-01-01
  • 2023-03-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-12-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多