これは、Web ページのプロンプトに従って PHP シミュレートされたログインのコードに従って変更されたログイン コードであり、オープンソース中国へのシミュレートされたログインです。
function login_post($url, $cookie, $post) {
$curl =curl_init();//curl モジュールを初期化
curl_setopt($curl, CURLOPT_URL, $url);// 送信されたアドレスにログイン
curl_setopt($curl, CURLOPT_HEADER, 0);//ヘッダー情報を表示するかどうか
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 0);//返された情報を自動的に表示するかどうか
curl_setopt($curl, CURLOPT_COOKIEJAR, $cookie); / / 指定したファイルに保存するCookie情報を設定
curl_setopt($curl, CURLOPT_POST, 1);//ポストモードで送信
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($post));//送信する情報
curl_exec($curl);//cURL を実行
curl_close($curl);//cURL リソースを閉じ、システム リソースを解放します
}
//ログイン成功後にデータを取得します
function get_content($url, $cookie) {
$ Ch = curl_setopt($ ch、$ url); ); // Cookie を読み取ります
$rs =curl_exec($ch); // cURL を実行してページのコンテンツをキャプチャします
}
$post = array (
'email' = &g t ; 'smud1994@163.com'、
'pwd' => '/my'、
'error_page' => => ; '1',
'submit' => '今すぐログイン'
);
//ログインアドレス
$url = "http://m.oschina.net/login"; Cookie 保存パス
$cookie = dirname(__FILE__) . '/cookie_oschina.txt'
//ログイン後に情報を取得するアドレス
$url2 = "http://m.oschina.net/my"; /模擬ログイン
login_post($url, $cookie, $post);
//ログインページ情報を取得
$content = get_content($url2, $cookie)
//Cookie ファイルを削除
@ unlink($cookie);
// 一致するページ情報
$preg = "/
<?php$cookie_file = dirname(__FILE__).'/cookie.txt';$rs=login('邮件地址','密码',$cookie_file);if($rs){ $rs=json_decode($rs,true); exit($rs['msg']);}else{ echo '<span style="color:red;">登陆成功</span>';}echo "<br>";echo "<hr>";echo getIndex($cookie_file);//输出OSC首页function login($user,$pwd,$cookie_file){ $post='email='.urlencode($user).'&pwd='.sha1($pwd).'&verifyCode=&save_login=1'; // 初始化 $curl = curl_init('http://www.oschina.net/action/user/hash_login'); $header = array(); $header[] = 'User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36'; curl_setopt($curl, CURLOPT_HTTPHEADER, $header); // 不输出header头信息 curl_setopt($curl, CURLOPT_HEADER, 0); // 保存到字符串而不是输出 curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_COOKIEJAR, $cookie_file); //存储cookies // post数据 curl_setopt($curl, CURLOPT_POST, 1); // 请求数据 curl_setopt($curl, CURLOPT_POSTFIELDS, $post); // 是否抓取跳转后的页面 curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); $response = curl_exec($curl); curl_close($curl); return $response;}function getIndex($cookie_file){ // 初始化 $curl = curl_init('http://www.oschina.net'); $header = array(); $header[] = 'User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36'; //$header[] = 'Cookie: tc=AQAAAOaUCR/QXw4AwxXKeMgqcfroqWeb; oscid=PwzzXphS9GBIcX5pQFukpai0W0vxPrG4zeASFKTqkhgqGAHYCQekA%2FptCnh127%2BP5immlCrhkQqiEriCja%2F4ov1i2XHq2D%2BP6Dn8L9pfVydrkxvpObEDaOsIy9RU4DtH'; curl_setopt($curl, CURLOPT_HTTPHEADER, $header); // 不输出header头信息 curl_setopt($curl, CURLOPT_HEADER, 0); curl_setopt($curl, CURLOPT_COOKIEFILE, $cookie_file); // 保存到字符串而不是输出 curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 是否抓取跳转后的页面 curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); $response = curl_exec($curl); curl_close($curl); return $response;}
パケットキャプチャデータを処理していたのに、私はそれに注意を払わなかったので、コードを書くのを手伝ってくれたモデレータに感謝します。視聴者は私を感謝し、崇拝しています。 。 。