【发布时间】:2015-01-24 01:07:59
【问题描述】:
我在 Google 上花了 2 天时间,寻找一种通过主题标签检索 Facebook 帖子的方法。 我已经知道 API 不允许任何带有主题标签的内容,我觉得这很愚蠢,但就是这样。
现在我想尝试的是通过 curl 获取这些帖子,但我并不擅长。
例如,假设您想要所有包含#baseball 的公开帖子。
登录后,您可以在那里看到它们:https://www.facebook.com/hashtag/baseball
所以基本上,我想卷曲那个 URL 来获取帖子。但是当然不行……
这是我使用的脚本:
$url = 'https://www.facebook.com/hashtag/baseball';
$http = curl_init($url);
$fake_user_agent = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040803 Firefox/0.9.3';
curl_setopt($http, CURLOPT_USERAGENT, $fake_user_agent);
$result = curl_exec($http);
你可以想象,$result 是空的...
在此之前我曾尝试获取访问令牌,但即使我将其添加到 URL 中,它也不起作用。
有什么想法吗?
【问题讨论】:
-
您可以先尝试验证吗?
-
我在使用 curl 抓取页面之前使用了 Facebook 类,但它没有改变任何东西(我正在使用 Facebook SDK for PHP)。我能够获得访问令牌,所以我想我以正确的方式登录......
-
我不知道 FB api。但通常您必须以某种方式将此访问令牌添加到后续调用中,对吗?
-
是的,当你使用graph api时......但是在我想做的事情中,grpah api不起作用,所以我不能使用graph.facebook.com。这就是为什么我真的需要 curl www.facebook.com。
-
这就是我的意思。作为测试,在 Chrome 中打开一个隐身标签。访问您的链接 (fb.com/hashtag/baseball) - 它显示“您必须登录才能看到此页面”。我想这也是你的 Curl 得到的。所以尝试在普通的 curl 调用中提供这个访问令牌(我猜是通过标题或其他东西)?或者我不明白整个事情:)