• 締切済み

サイト内の一部の情報を取得したい。

file_get_contentsとpreg_matchを使ってhttp://blogs.yahoo.co.jp/y_j_blogの訪問者履歴の情報(ニックネームとYahoo!ID)を取得したいのですが、上手く行きません。 JavaScriptの中身の情報を取得する方法はないのでしょうか? 具体的なソースコードを教えて頂ければ有り難いです。

  • PHP
  • 回答数1
  • ありがとう数0

みんなの回答

  • gentaro
  • ベストアンサー率47% (105/221)
回答No.1

Ajaxにて通信、結果を取得していますから、html内に記述されている全てのjsファイルを落として 解析すれば可能かと。 どこかに必ず通信先のURLを記述しているはずです。

関連するQ&A

  • マッチ情報を取得

    $yahoo = file_get_contents(http://www.yahoo.co.jp/) で取得したソース情報の中から特定の情報だけを抜き取りたいのですが・・・。 正規表現 preg_match()などを使って欲しい情報があれば、特定の範囲を抜き取りするのかな?と思うのですが・・・。 いまいちやり方がわかっていません。 アドバイスお願いします。

    • 締切済み
    • PHP
  • PHPでWebページの特定部を取得したいのですが、上手くいきません。

    PHPでWebページの特定部を取得したいのですが、上手くいきません。 現在file_get_contentsを用いてURLを指定して取得し、preg_matchの引数にする方法で行っています。 また、preg_matchは以下のように用いています。 preg_match("/パターン(.*?)パターン/s", $html, $matches); print_rで$matchesを表示してみたところArray()のみ出力されます。 また、話が逸れて申し訳ないですが、上記とは別にfile_get_contentsを用いて動的にURLを指定して取得しているのですが、処理に時間がかかります。(約10秒) $wordをURLに組み込む変数として以下のように記述しています。 file_get_contents("http://…".$word."…(URLの続き)"); 以上の2点についてご教示願います。

    • ベストアンサー
    • PHP
  • PHPで<title>タグ取得の動作が非常に重い

    PHPで<title>タグ取得の動作が非常に重い $html = file_get_contents($url); if(preg_match( "/<title>(.*?)<\/title>/i", $html, $match)) { } 上記のような方法で一度に(1ページ内で)30サイトほどの<title>タグを取得すると、不可がかかり、表示までにかなり時間がかかってしまいます。 preg_match では重いのでしょうか。 それとも一度に30サイトはそもそも無理があるのでしょうか。。

    • ベストアンサー
    • PHP
  • PHPで外部サイトの一部を取得して表示

    こんにちは。 普通、外部ファイルの内容を取得して表示する場合、次のようにしますよね。 <?php echo file_get_contents("***URL***"); ?> それで、そのページの一部分、 例えば<div id="text">~</div>の内容を取得して、 file_get_contentsと同じように表示する方法はありますでしょうか。 取得する範囲はIDで指定できればと思います。 よろしくお願いします。

    • 締切済み
    • PHP
  • 取得したい日本最初のホームページ

    file_get_contents()で日本最初のホームページ(http://www.ibarakiken.gr.jp/www/)を取得したいです。 file_get_contents()を使いレスポンスヘッダをみると200が返ってアクセスはうまくいってるのですが中身が空になります。 日本最初のホームページがあとから中身を<FRAME>タグで取得しているのが原因かなぁ~と思っているのですが、でも<HEAD>タグの部分は取得できるはず...

    • 締切済み
    • PHP
  • javascriptを起動した後のウェブページを取得するには

    こんにちは。よろしくお願いいたします。 以下のようなHTMLソースをブラウザで読み込むとhogeと 表示されますが、PHPのfile_get_contentsやPerlのLWPなどを使って ページを取得するとソースそのものが取得されます。PHPやPerlを使って ブラウザから見たソース(以下の例ではhoge)を取得するには どのようにしたらよいのでしょうか? <script type="text/javascript"> window.onload=function (){ document.getElementById("a").innerHTML="hoge"; } </script> <div id="a"></div>

    • ベストアンサー
    • PHP
  • UTF-8サイトを取得しSJISに

    以下のPHPで指定のサイトを取得すると文字化けしてしまいます。 何処が悪いのか分かる方、ご指導お願い致します。 <?php $str = file_get_contents('http://esthe-cinderellaesthe.on.omisenomikata.jp/diary'); mb_convert_encoding($str,"SJIS","UTF-8"); if (preg_match('!<div id="content">(.*?)<div class="pr">!s', $str, $res)){ print $res[1]; } ?>

    • ベストアンサー
    • PHP
  • 他サイトの情報取得

    JavaScriptで、他のサイトの情報を取得することは可能でしょうか? 例えば、PerlでのLWP::Simpleのget関数のようなものを想定しています。 use LWP::Simple; my $buf = get($url); ひょっとしたら、JavaScriptからPerlスクリプト呼び出しが行えるのかもしれませんが、そのへんは全くわかってません。 この疑問の背景としては、 http://www.tagindex.com/javascript/time/watch1.html 上記サイトにあるJavaScript関数disp()内の以下記述  var watch1 = now.toLocaleString(); // ローカル時 この「now.toLocaleString()」の代わりに、他サイトから抜き出した情報を代入したいと思っています。 そして、 setTimeout("disp()", 1000); で、繰り返し表示させる形です。 以上、よろしくお願いいたします。

  • file_get_contents関数で引数をURLにすれば、HTML

    file_get_contents関数で引数をURLにすれば、HTMLソースを取得できるのはわかるのですが、 例えば、URLが制限 255バイト?を超える場合、GETでなくPOSTタイプでHTMLを取得したいのですが、file_get_contents関数のように手軽にPOSTタイプで取得できる関数はありますか? PHP5を使っています。

    • 締切済み
    • PHP
  • PHPで一部サイトからRSS情報を取得できない

    PHPを使用して、他のサイトからRSS情報を取得し、 DBにデータを格納する、というような処理をするバッチを作成しています。 SimplePieという無料のライブラリを使用し、 下記のようなファンクションを作成しました。 /* ================= * * RSS情報を最大5件取得 * =================*/ function get_rss_info($feed_url) { // 戻り値 $rss_list = array(); // RSSデータを取得 $feed = new SimplePie(); $feed -> enable_cache(false); $feed -> set_feed_url($feed_url); $feed -> init(); $feed->handle_content_type(); // 過去記事を最大5記事まで取得 $feedItems = $feed -> get_items(0, 5); foreach($feedItems as $item) { // ※自作クラスです $rss = new RSS(); $rss->rss_id = $item -> get_id(); $rss->rss_title = $item -> get_title(); $rss->published_date = $item -> get_date('Y/m/d H:i:s'); $rss->rss_url = $item -> get_permalink(); $rss->rss_text = $item -> get_description(); array_push($rss_list, $rss); } return $rss_list; } 上記のファンクションで、アメブロなどのRSS情報は取得できますし、 一部WordPressサイトのRSS情報も問題なく取得することが出来ました。 しかし、一部のWordPressサイトでは、上記のファンクションを通しても 1つもRSS情報を取得することが出来ず、 配列も空のままで返却されてしまっております。 Feedlyなどの外部サービスで情報が取得できているので、 私のプログラムが悪いのだとは思っているのですが・・・ 自分なりに調査をしてみたのですが、 全く糸口を掴むことができませんでした。 お知恵を貸していただければと思います。 どうぞよろしくお願いいたします。

    • ベストアンサー
    • PHP