转载一定要注明出处!http://blog.csdn.net/u011852230/article/details/40738475,谢谢
做个申明,介于原来把自己做的东西上传到CSDN下载,被人下了后又做为自己的上传。我就不上传源代码了,有需要的留言就是了。
好了废话少说入正题
1、对于爬取这种社交网络有一大障碍就是模拟登录,也就是发送cookie,你大致可以理解为模拟浏览器重复打开一个页面不用重新登录,因为浏览器客户端已经记录了你的身份信息,并把它放进http包里又发过去了,否则你爬取的网页源代码只能是登录界面,所以就别想着用fopen,file_get_contents这种关键字了,直接上curl,如果php报错没有,打开php.ini里面把相应注释去掉就行,补充:如果用的phpnow集成环境,那应该是在php2apachehandler.ini里,记不清了。curl代码我直接贴,想了解这个的可以去查,待会主要讲讲傻缺的人人网身份信息的cookie是多么low。
function updateRenren($renren_username,$renren_password,$tried_times){
if($tried_times>=3){
return false; }
global $ch,$cookie_save;
$cookie_jar=tempnam('./cookie','renren');
$ch=&getCurl($cookie_jar,"POST","http://www.renren.com/ajaxLogin/login");
curl_setopt($ch,CURLOPT_POSTFIELDS,'email='.urlencode($renren_username).'&password='.urlencode($renren_password).'&origURL=http%3A%2F%2Fwww.renren.com%2FHome&domain=renren.com&key_id=1&captcha_type=web_login&_rtk=90ae5f12'); //注意这一行,就是人人网需要接收的cookie了
$str=&justsend($ch);
$cookie_save=$cookie_jar;
}
function &getCurl($jar,$method,$url){
$ch=curl_i