JSでおんなじようにやろうとしたらクロスドメインのセキュリティでダメだったorz
クロスドメインでDOMっていじれないのね。
PHPでBasic認証ってこうやって超えるのねー。
こういうプログラムって初めてだから、勉強になった。
以下ソース
<?php function MixiLogin($data) { $data = http_build_query($data + array('next_url' => 'home.pl'), '', '&'); $context = stream_context_create(array( 'http' => array( 'method' => 'POST', 'header' => implode("\r\n", array( 'Content-Type: application/x-www-form-urlencoded', 'Content-Length: ' . strlen($data) )), 'content' => $data ) )); file_get_contents('http://mixi.jp/login.pl', false, $context); $cookies = array(); foreach ($http_response_header as $r) { if (strpos($r, 'Set-Cookie') === false) { continue; } $c = explode(' ', $r); $c = str_replace(';', '', $c[1]); $cookies[] = $c; } return $cookies; } function MixiGetPage($url, $cookies) { $context = stream_context_create(array( 'http' => array( 'method' => 'GET', 'header' => implode("\r\n", array( 'Cookie: ' . implode('; ', $cookies) )) ) )); return file_get_contents($url, false, $context); } $data = array( 'email' => 'hoge@hoge', 'password' => 'fuga' ); $cookies = MixiLogin($data); $page = MixiGetPage('http://mixi.jp/recent_echo.pl', $cookies); print(htmlspecialchars($page,ENT_NOQUOTES,"euc-jp")); ?>
このままだとmixiボイスのアウトプットのHTMLソースを
べたーーーーーーーーと取ってきてしまうので
なんとかこれを、パースなり正規表現なり噛ませて
ボイスのTLをうまく取って来れないかなぁと模索中。
ハック記念(?)にインターンの時の写真をぱしゃり。
笠原社長との2ショット(ぁ
さてと、面白くなってきたb