php版 WWW::Mechanizeについて
created: 2008-11-12 15:03 | modified: 2008-11-16 21:04 | reply: 2
[4252] php版 WWW::Mechanizeについて - やす - 2008-11-12 15:03- [4253] WWW::Mechanize と PEAR/HTTP_Client - ゆうじ - 2008-11-12 19:16
- [4254] 後日試して報告いたします。 - やす - 2008-11-16 21:04
[4253] WWW::Mechanize と PEAR/HTTP_Client
user: ゆうじ | created: 2008-11-12 19:16
こんばんわ。
どちらも使ったことがありませんが
向学のためちょっと調べみました。
何か勘違いしてる気もしますので
ちがってたら教えてください。
こちらのPealのサンプル見る限り
リクエストボディ(POSTのパラメータ)を添えて
POSTリクエストを送信してるようですね。
($mech->submit() はリクエストボディが無いもの?)
http://e8y.net/mag/007-www-mechanize/
もうご覧になってるかもしれませんが
ここにHTTP_Clientのサンプルがありました。
こちらも同じような流れです。
●PEAR::HTTP_Clientでサイトの内容取得
http://www.phppro.jp/phptips/archives/vol13/1
HTTP_Clientはクッキーもイケるとあるので、
あらかじめ、サーバにクッキーをセットしてもらうため
POST または GET リクエスト(1)を送信した後、
さらに(2)で $client->post(...) とすれば
$mech->submit() と同等の結果が得られるのでは無いかと考えます。
どちらも使ったことがありませんが
向学のためちょっと調べみました。
何か勘違いしてる気もしますので
ちがってたら教えてください。
こちらのPealのサンプル見る限り
リクエストボディ(POSTのパラメータ)を添えて
POSTリクエストを送信してるようですね。
($mech->submit() はリクエストボディが無いもの?)
http://e8y.net/mag/007-www-mechanize/
# トップにアクセスし、
$mech->get('http://***.jp/');
# ログイン。
$mech->submit_form(
fields => {
email => '***@***.com',
password => '****',
},
);
$mech->get('http://***.jp/home.pl');
# 足あとページに遷移
$mech->get('http://***.jp/show_log.pl');もうご覧になってるかもしれませんが
ここにHTTP_Clientのサンプルがありました。
こちらも同じような流れです。
●PEAR::HTTP_Clientでサイトの内容取得
http://www.phppro.jp/phptips/archives/vol13/1
$client =& new HTTP_Client();
// (1)サーバーに、クッキーをセットして
// もらうためPOSTリクエスト
$client->post($login_url, $login_params);
// (2)本来獲得したいページをリクエスト
$client->get($new_friend_diary_url);
// (3)レスポンス獲得
$response = $client->currentResponse(); HTTP_Clientはクッキーもイケるとあるので、
あらかじめ、サーバにクッキーをセットしてもらうため
POST または GET リクエスト(1)を送信した後、
さらに(2)で $client->post(...) とすれば
$mech->submit() と同等の結果が得られるのでは無いかと考えます。
