顯示廣告
隱藏 ✕
看板 Knuckles_note
作者 Knuckles (站長 那克斯)
標題 [PHP] 使用curl登入facebook抓資料
時間 2012年02月20日 Mon. AM 08:20:04


facebook的個人相簿就算設成公開,也是要登入才能看
所以來研究了一下要怎麼用PHP的curl登入facebook

參考:
Facebook Login with cURL - PHP | DaniWeb
PHP @ DaniWeb - By this script you can remotely login into facebook account with your password and username and fetch/send data. ...
 

function cURL($url, $header=NULL, $cookie=NULL, $post=NULL)
{
	
//$user_agent = $_SERVER['HTTP_USER_AGENT'];
	
$user_agent = 'Mozilla/5.0 (Windows NT 5.1; rv:10.0.2) Gecko/20100101 Firefox/10.0.2';
	
$ch = curl_init();
	
curl_setopt($ch, CURLOPT_HEADER, $header);
	
curl_setopt($ch, CURLOPT_NOBODY, $header);
	
curl_setopt($ch, CURLOPT_URL, $url);
	
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
	
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
	
curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
	
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
	
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);

	
if ($post) {
	
	
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
	
	
curl_setopt($ch, CURLOPT_POST, 1);
	
	
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
	
}
	
$result = curl_exec($ch);
	
$error = curl_error($ch);
	
curl_close($ch);

	
if($result){
	
	
return $result;
	
}else{
	
	
return $error;
	
}
}

function curl_fb($url){
	
//輸入要用來登入的e-mail與密碼
	
$EMAIL = "";
	
$PASSWORD = "";

	
$fb_login_url = "https://login.facebook.com/login.php?login_attempt=1";
	
$result = cURL($fb_login_url,true,null,"email=$EMAIL&pass=$PASSWORD");
	
preg_match('%Set-Cookie: ([^;]+);%',$result,$M);
	
$result = cURL($fb_login_url,true,$M[1],"email=$EMAIL&pass=$PASSWORD");
	
preg_match_all('%Set-Cookie: ([^;]+);%',$result,$M);

	
$cookie = '';
	
for($i=0;$i<count($M[0]);$i++){
	
	
$cookie .= $M[1][$i].";";
	
}

	
return cURL($url,null,$cookie,null);
}

//要抓取的網頁顯示出來
$url = 'http://www.facebook.com/';
echo curl_fb($url);

--
※ 作者: Knuckles 時間: 2012-02-20 08:20:04
※ 編輯: Knuckles 時間: 2012-02-20 08:23:17
※ 看板: KnucklesNote 文章推薦值: 2 目前人氣: 0 累積人氣: 4925 
( ̄︶ ̄)b iceover, g618 說讚!
1樓 時間: 2012-03-03 13:00:21 (台灣)
  03-03 13:00 TW
這篇code怎麼上色的?
[code=php]...[/code]參考這篇 http://disp.cc/b/9-GqP
r)回覆 e)編輯 d)刪除 M)收藏 ^x)轉錄 同主題: =)首篇 [)上篇 ])下篇