php使用snoopy與curl類比登陸的執行個體分享

來源:互聯網
上載者:User
說起類比登入,很多人可能會想起CURL。其實除了CURL,snoopy也是可以實現類比登陸的。本文就執行個體分析了snoopy與curl兩種實現方法,希望對大家有所協助。

php類比登陸的實現方法,具體執行個體代碼如下:

1)使用snoopy類比登陸:

<?phpset_time_limit(0);require "Snoopy.class.php";$snoopy=new Snoopy();$snoopy->referer='http://www.***.net/';$snoopy->agent="Mozilla/5.0 (Windows NT 6.1; rv:22.0) Gecko/20100101 Firefox/22.0";$submit_vars['email'] ='登陸帳號';$submit_vars['password'] ='登陸密碼';$url='http://www.***.net/test/Login.php';//登陸資料提交的URL地址$snoopy->submit($url,$submit_vars);$snoopy->fetch("http://www.***.net/");//希望擷取的頁面資料echo $snoopy->results;//m.***.net

2)使用curl類比登陸:

<?phpset_time_limit(0);$cookie_file=tempnam('./tmp','cookie');//tmp目錄需要先建立好$ch=curl_init();$login_url='http://www.***.net/PLogin.do';$curlPost="email=登陸帳號&password=登陸密碼";curl_setopt($ch,CURLOPT_URL,$login_url);//啟用時會將標頭檔的資訊作為資料流輸出curl_setopt($ch,CURLOPT_HEADER,0); //設定是否輸出頁面內容curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);curl_setopt($ch,CURLOPT_POST,1); //佈建要求發送方式,post或get,CURLOPT_POST或CURLOPT_GETcurl_setopt($ch,CURLOPT_POSTFIELDS,$curlPost);curl_setopt($ch,CURLOPT_COOKIEJAR,$cookie_file); //儲存cookiecurl_exec($ch);curl_close($ch);$ch=curl_init();$login_url2="http://www.***.net/";curl_setopt($ch,CURLOPT_URL,$login_url2);curl_setopt($ch,CURLOPT_HEADER,0); curl_setopt($ch,CURLOPT_RETURNTRANSFER,0);curl_setopt($ch,CURLOPT_COOKIEFILE,$cookie_file); //讀取cookiecurl_exec($ch);curl_close($ch);

相關推薦:

php curl錯誤排查的方法詳解

PHP CURL cookie傳遞的方法介紹

php snoopy採集類介紹_PHP教程

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.