PHP は、curl を使用して QQ スペースへのログインをシミュレートします。何が問題なのかを教えてください。つまり、ログイン後のページ情報を直接取得できません (ログイン後の個人ホームページ情報などを含む)
<?php$qqname='';//这里填写帐号$qqpassword='';//这里填写密码if(!file_exists('./temp')){ mkdir('./temp'); }$cookie_file = tempnam('./temp','cookie');$login_url = 'http://ptlogin2.qq.com/login';$post_fields = 'u='.$qqname.'&m='.$qqpassword.'&css=http://imgcache.qq.com/ptcss/b2/qzone/15000101/style.css&mibao_css=m_qzone&aid=15000101&u1=http://imgcache.qq.com/qzone/v5/loginsucc.html?para=izone&ptredirect=1&h=1&from_ui=1&dumy=';$ch = curl_init($login_url);curl_setopt($ch, CURLOPT_HEADER, 0);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_POST, 1);curl_setopt($ch, CURLOPT_POSTFIELDS, $post_fields);curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file);curl_exec($ch);curl_close($ch);$url='http://imgcache.qq.com/qzone/v5/loginsucc.html?para=izone';$ch = curl_init($url);curl_setopt($ch, CURLOPT_HEADER, 0);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file);curl_exec($ch);//preg_match("/<li> (.*)<\/li>/",$contents,$arr);curl_close($ch);$url='http://user.qzone.qq.com/'.$qqname;$ch = curl_init($url);curl_setopt($ch, CURLOPT_HEADER, 0);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file);$contents = curl_exec($ch);//preg_match("/<li> (.*)<\/li>/",$contents,$arr);echo $contents;curl_close($ch);?>
誰か知っていますか? ?
デバッグして、どのエラー プロンプトが簡単に解決できるかを確認してください
誰か知っていますか? ?
followlocation を追加して見てください
デバッグ
QQ 関連ページのログインは、post ではなく get の形式で行われます。送信された情報はすべて get メソッドを通じて送信されますが、ログイン パスワードは32 に暗号化されます
QQ 関連ページのログインは、投稿ではなく取得の形式で行われます。送信された情報はすべて get メソッドを通じて送信されますが、ログイン パスワードは 32 ビット暗号文に暗号化されることに注意してください