PHP curl 携带cookie请求抓取源码,模拟登陆。
公司需要采集一批手机号码,有指定网站。但是需要登陆后才能看到客户号码,手动点击复制太慢,如此就写了以下模拟登陆采集号码程序,分享给大家参考参考.
function request_url_data($data) #获取保存COOKIE { $cookieSuccess = __DIR__."/cookie.txt";#cookie保存文件地址 $data['user'] = '用户名'; $data['pwd'] = '密码'; $requesturl = 'http://GET登陆提交地址?'.http_build_query($data); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $requesturl); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_COOKIEFILE, $cookieSuccess); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); $data=curl_exec($ch); curl_close($ch); return $data; } function get_list($requesturl)#携带COOKIE请求获取登陆后的内容 { $cookieSuccess = __DIR__."/cookie.txt"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $requesturl); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_COOKIEFILE, $cookieSuccess); //使用上面获取的cookies curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); // https请求 不验证证书和hosts curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); $data=curl_exec($ch); curl_close($ch); return $data; }
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步