在不考慮驗證碼的情況一下,php實現模擬登入,網上給的辦法一般是採用curl來模擬實現,但是curl實現的是伺服器端與伺服器端建立了會話,只能模擬登陸之後獲取登陸之後的資料,無法將cookie資訊種植到客戶端上(至少目前本人查詢沒有找到辦法)最後自己通過隱藏的iframe來實現。本文主要介紹了php簡單實現模擬登陸功能,涉及php使用curl實現模擬登陸的相關操作技巧,需要的朋友可以參考下,希望能幫助到大家。
1、curl實現模擬登入的**,(只是實現伺服器與伺服器建立會話,其實並沒有在客戶端與伺服器之間建立會話)
$cookie_jar = tempnam('./tmp','cookie');
$ch = curl_init();
curl_setopt($ch, curlopt_url, '');
curl_setopt($ch, curlopt_post, 1);
$request = 'uname=admin&password=123456';
curl_setopt($ch, curlopt_postfields, $request);
//把返回來的cookie資訊儲存在$cookie_jar檔案中
curl_setopt($ch, curlopt_cookiejar, $cookie_jar);
//設定返回的資料是否自動顯示
curl_setopt($ch, curlopt_returntransfer, 1);
//設定是否顯示頭資訊
curl_setopt($ch, curlopt_header, false);
//設定是否輸出頁面內容
curl_setopt($ch, curlopt_nobody, false);
curl_exec($ch);
curl_close($ch);
//get data after login
$ch2 = curl_init();
curl_setopt($ch2, curlopt_url, '');
curl_setopt($ch2, curlopt_header, false);
curl_setopt($ch2, curlopt_returntransfer, 1);
curl_setopt($ch2, curlopt_cookiefile, $cookie_jar);
$orders = curl_exec($ch2);
echo $orders;
exit;
echo '
';echo strip_tags($orders);
echo '
'; curl_close($ch2);
2、通過隱藏的iframe實現客戶端與伺服器端的通訊(肯能帶來一定的安全隱患)
$gourl="email/";
function get_pass()
window.open("=$gourl ?>");
window.close();
ceshi1.php
ceshi
function get_pass1()
document.form1.submit();
php模擬登陸,php模擬登陸的實現方法分析
php模擬登陸的實現方法,這裡分別列舉兩種方法實現模擬登陸人人網。具體例項 如下 1 使用snoopy模擬登陸 set time limit 0 require snoopy.class.php snoopy new snoopy snoopy referer snoopy agent mozill...
PHP模擬登陸獲取成績資訊
首先用wireshark抓包分析。在瀏覽器中進入西電研究生院的登陸頁面 抓包得到的結果如下 1.獲取cookie 從圖中可以看到,此時已從伺服器那裡得到了cookie。我做了個測試,如果停留在這個頁面時間過長,cookie就會失效,此時即使輸入正確的使用者名稱和密碼,也不會正常登陸,而是出現以下情況...
豆瓣簡單模擬登陸
找到登陸介面後,用requests.post 請求該網頁url,之後將得到的cookie存入本地。遇到什麼問題?引數問題,在requests的post中要用,data。在get中要用params,這個就搞人了。給我感覺cookie的作用。沒有cookie,一些 是不能爬取的,要爬就需要cookie,...