VPSサーバーでWebサイト公開 備忘録 ~Linux、MySQLからAJAXまで

PHP CURLで検索条件を入力するWebページの情報を取得

PHP CURLで検索条件を入力して表示するWebページの情報を取得する方法をまとめました。

※目次をクリックすると目次の下部にコンテンツが表示されます。

設定情報を確認
ブラウザで対象Webページにアクセスし、そのHTTPパケットをFiddlerでモニタし、PHP CURLで設定する項目を確認します。
 
モニタツールFiddlerについては下記記事参照。
PHP CURLでリファラーとユーザーエージェントを設定してWebページを取得
 
1)Fiddlerを起動
 
2)ブラウザで対象Webページにアクセスし、検索条件を入力してWebページを表示
 
3)PHP CURLで設定する項目を確認
 
ブラウザのアドレスバーのURLを確認し、Fiddlerの左ペインで該当するURLのリクエストを選択します。
 
“Inspectors”タブ→”Headers”をクリックし、HTTPパケットのヘッダーを表示し、下記情報を確認します。
 
①リクエストURI
 
Fiddlerでも確認できますが、ブラウザのアドレスバーの方が簡単に確認出来ます。
 
例)http://www.example.com/search/?項目1=入力値1&項目2=入力値2&・・・
 
②リファラー
 
“Referer:”と記載されている部分の値を取得。
例)
Referer: http://www.example.com/・・・
 
③ユーザーエージェント
 
“User-Agent:”と記載されている部分の値を取得。
例)
User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.104 Safari/537.36
PHP CURLのコード作成
<?php

$target = "上記①で取得した情報";
$agent = "上記③で取得した情報";
$ref = "上記②で取得した情報";

$sc = curl_init();

curl_setopt($sc, CURLOPT_URL, $target);
curl_setopt($sc, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($sc, CURLOPT_USERAGENT, $agent); 
curl_setopt($sc, CURLOPT_REFERER, $ref);
curl_setopt($sc, CURLOPT_PROXY, '127.0.0.1:8888');//Fiddler監視用

$web_page = curl_exec($sc);

curl_close($sc);

var_dump($web_page);

?>
モバイルバージョンを終了