1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > PHP CURL模拟登录新浪微博抓取页面内容 基于EaglePHP框架开发【PHP】

PHP CURL模拟登录新浪微博抓取页面内容 基于EaglePHP框架开发【PHP】

时间:2020-01-11 05:18:12

相关推荐

PHP CURL模拟登录新浪微博抓取页面内容 基于EaglePHP框架开发【PHP】

后端开发|php教程

CURL,模拟登录

后端开发-php教程

DY第一源码网站,ubuntu20.04.2命令,tomcat项目访问根目录,爬虫 文字加密,php数组提取,丰都省心seo推广大概多少钱lzw

/**

* CURL请求

* @param String $url 请求地址

* @param Array $data 请求数据

*/

function curlRequest($url,$data=\,$cookieFile=\){

$ch = curl_init();

$option = array(

CURLOPT_URL => $url,

CURLOPT_HEADER =>0,

CURLOPT_RETURNTRANSFER => 1,

);

if($cookieFile){

$option[CURLOPT_COOKIEJAR] = $cookieFile;

$option[CURLOPT_COOKIEFILE] = $cookieFile;

//$option[CURLOPT_COOKIESESSION] = true;

//$option[CURLOPT_COOKIE] = prov=42;city=1;

}

if($data){

$option[CURLOPT_POST] = 1;

$option[CURLOPT_POSTFIELDS] = $data;

}

curl_setopt_array($ch,$option);

$response = curl_exec($ch);

if(curl_errno($ch) > 0){

throw_exception("CURL ERROR:$url ".curl_error($ch));

}

curl_close($ch);

return $response;

}

function login($username,$password){

if($username && $password){

$preLoginData = curlRequest(/sso/prelogin.php?entry=weibo&callback=sinaSSOController.preloginCallBack&su=.base64_encode($username).&client=ssologin.js(v1.3.16),\,self::COOKIE_FILE);

preg_match(/sinaSSOController.preloginCallBack\((.*)\)/,$preLoginData,$preArr);

$jsonArr = json_decode($preArr[1],true);

if(is_array($jsonArr)){

$postArr = array(

entry => weibo,

gateway => 1,

from => \,

savestate => 7,

useticket => 1,

ssosimplelogin => 1,

su => base64_encode(urlencode($username)),

service => miniblog,

servertime => $jsonArr[servertime],

once => $jsonArr[ once],

pwencode => wsse,

sp => sha1(sha1(sha1($password)).$jsonArr[servertime].$jsonArr[ once]),

encoding => UTF-8,

url => /ajaxlogin.php?framelogin=1&callback=parent.sinaSSOController.feedBackUrlCallBack,

eturntype => META

);

$loginData = curlRequest(/sso/login.php?client=ssologin.js(v1.3.16),$postArr,self::COOKIE_FILE);

if($loginData){

$matchs = array();

preg_match(/replace\(\(.*?)\\)/,$loginData,$matchs);

$loginResult = curlRequest($matchs[1],\,self::COOKIE_FILE);

$loginResultArr = array();

preg_match(/feedBackUrlCallBack\((.*?)\)/,$loginResult,$loginResultArr);

//$userInfo = json_decode($loginResultArr[1],true);

//Log::info(var_export($loginResultArr[1]));

}else{

throw_exception(Login sina fail.);

}

}else{

throw_exception($preLoginData);

}

}else{

throw_exception(Param error.);

}

}

正版卡盟源码,vscode不用安装,bzip ubuntu,html重启tomcat,sqlite如何安装吗,插件功能没有留言,前端流行类库和框架,雪松是爬虫的死敌,php gd 5.6,赤坎优化seo,网站的动画效果,网页 日历控件,寺院模板免费下载lzw

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。