Snoopyではてなにログインする
curlとかPEAR::HTTP_Request使うよりもお手軽かも。
<?php error_reporting(E_ALL); include_once 'Snoopy.class.php'; $account="doroyamada"; $password="nanchara"; $snoopy = new Snoopy; $url="http://www.hatena.ne.jp/login"; $params = array( "name" => $account, "password" => $password, "persistent" => "0", ); $snoopy->submit($url,$params); #var_dump($snoopy); foreach($snoopy->headers as $header){ if(preg_match('/Set-Cookie: rk=(\w+);/',$header,$temp) == 1){ $cookies['rk'] = $temp[1]; } } $snoopy->cookies = $cookies; $snoopy->fetch("http://d.hatena.ne.jp/".$account."/rss"); file_put_contents($account.".rss",$snoopy->results); ?>
snoopyがどんな要素(?)を持っているんだろうかと思ってvar_dumpしたらうまい具合に表示してくれた(上のスクリプトのコメントアウト部分)。
やりたかったのは、プライベートモードにしているページのRSSだけは公開しようかということ。なんか無駄な労力のような気もするけど。
参考にしたページ
[PHP] Snoopy で Web 巡回ソフトを作る - ひきぷろぐ