ホームページ  >  記事  >  バックエンド開発  >  phpカールはログインをシミュレートし、Webコンテンツを取得します

phpカールはログインをシミュレートし、Webコンテンツを取得します

WBOY
WBOYオリジナル
2016-07-25 08:53:081223ブラウズ
  1. class CURL

  2. {
  3. var $cookie_file; // Cookie ファイルの保存パスとファイル名を設定します
  4. var $loginurl; // ログインアドレス
  5. var $actionstr; /ログインパラメータ
  6. function __construct()
  7. {
  8. $this->gt;cookie_file=tempnam("./TEMP","COOKIedsdsdsdsdwerwdszx454.txt")
  9. }

  10. function vlogin()

  11. { //bbs.it-home.org によるログインのシミュレート
  12. $ch =curl_init();
  13. curl_setopt($ch, CURLOPT_URL,$this->loginurl);
  14. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//データを表示するかどうか 0 は 1 を表示するか表示しないことを意味します
  15. curl_setopt($ch, CURLOPT_POST, 1);
  16. curl_setopt($ch, CURLOPT_POSTFIELDS, $this->actionstr);
  17. curl_setopt($ch,CURLOPT_COOKIEJAR,$this->) ; cookie_file);
  18. $data =curl_exec($ch);
  19. curl_close($ch);
  20. }

  21. function gethtml($url)

  22. { // Web ページのコンテンツを取得する php のシミュレートされたログイン
  23. $curl =curl_init(); // CURL セッションを開始します
  24. curl_setopt($curl, CURLOPT_URL, $url) // アクセスするアドレス
  25. curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);認証証明書
  26. curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 1); // 証明書から SSL 暗号化アルゴリズムが存在するかどうかを確認します
  27. curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); // で使用されるブラウザをシミュレートします。 user
  28. curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); // 自動リダイレクトを使用します
  29. curl, CURLOPT_AUTOREFERER, 1) // リファラーを自動的に設定します
  30. curl_setopt($curl, CURLOPT_HTTPGET, 1); Post request
  31. curl_setopt ($curl, CURLOPT_COOKIEFILE, $this->cookie_file); // 上記に保存されている Cookie 情報を読み取ります
  32. curl_setopt($curl, CURLOPT_TIMEOUT, 30) // 無限ループを防ぐためにタイムアウト制限を設定します
  33. curl_setopt($) curl, CURLOPT_HEADER , 0); // 返されたヘッダー領域の内容を表示します
  34. curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1) // 取得した情報はファイルストリームの形式で返されます
  35. $tmpInfo =curl_exec($curl) ); // オペレーションを実行します
  36. if (curl_errno($curl)) {
  37. echo 'Errno'.curl_error($curl); // CURL セッションを終了します
  38. return $tmpInfo;データを返す
  39. }
  40. }
  41. $ host="http://192.168.0.2";
  42. $mycurl=new CURL();
  43. $mycurl->actionstr="user_name=111&uspassword=111";
  44. $mycurl- >loginurl=$host."/ admin/login.php";
  45. $mycurl->vlogin();//ログイン
  46. $htmlcontent=$mycurl->gethtml($host."/user.php? id=123");//これを取得します ページのコンテンツ
  47. echo $htmlcontent;//このページのコンテンツを表示します
  48. //正常に取得されました

  49. コードをコピー
>>> 詳細php シミュレーション ログインの記事、トピック リンク: php シミュレーション php カール シミュレートされたログイン チュートリアルにログインします

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。