远程登录facebook账户

Posted

技术标签:

【中文标题】远程登录facebook账户【英文标题】:Remote login to facebook account 【发布时间】:2011-03-09 00:14:58 【问题描述】:

出于我的项目目的,我需要远程登录我的 facebook 帐户并从那里检索一些信息。出于登录目的,我正在使用 php 的 cURL 库。在执行代码时,facebook 页面要求我在我的浏览器上启用我已经启用的 cookie。代码有问题吗?任何人都可以帮助我远程登录我的帐户吗?我是新手,如果有任何帮助,我将不胜感激。 这是代码

<?php

 //create array of data to be posted

 $post_data['email'] = '*********';

 $post_data['password'] = '**********';

 $post_data['action'] = 'login';


 //traverse array and prepare data for posting 

 foreach ( $post_data as $key => $value) 

  $post_items[] = $key . '=' . $value;

 

 //create the final string to be posted using implode()

 $post_string = implode ('&', $post_items);



 //create cURL connection

 $ch = curl_init('https://login.facebook.com/login.php?');



 //set options

 curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);

 curl_setopt($ch, CURLOPT_USERAGENT, 
   "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)");

 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

 curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);



 //set data to be posted

 curl_setopt($ch, CURLOPT_POSTFIELDS, $post_string);



 //perform our request

 $result = curl_exec($ch);



 print_r($result);



 //close the connection

 curl_close($ch);

 ?>

【问题讨论】:

问题是什么,为什么不使用 FB API? 感谢您的回答,但我无法使用 FB API。 【参考方案1】:

要在 curl 中使用 cookie,您需要指定一个“cookie jar”,这是 cookie 应该存储和加载的地方。您可以使用CURLOPT_COOKIEFILECURLOPT_COOKIEJAR 选项来执行此操作。应该这样做:

curl_setopt($ch, CURLOPT_COOKIEJAR, 'facebook_cookies.txt');
curl_setopt($ch, CURLOPT_COOKIEFILE, 'facebook_cookies.txt');

查看http://php.net/curl_setopt了解更多信息。

顺便说一句,您还可以将$post_fields 作为数组传递给CURLOPT_POSTFIELDS,因此您实际上不必自己生成查询字符串。如果你想这样做,还有一个 http_build_query() 函数可以做到这一点。不过,这与您发布的问题无关。

【讨论】:

以上是关于远程登录facebook账户的主要内容,如果未能解决你的问题,请参考以下文章

如何打开MySQL中root账户的远程登录

如何打开MySQL中root账户的远程登录

如何打开MySQL中root账户的远程登录

远程桌面证书或相关链无效怎么破

使用OpenSSH远程登录

给linux 授权一个可以远程登录的账户