JavaScript実行結果の情報取得方法について

このQ&Aのポイント
  • ホームページの特定の情報を取得する方法として、JavaScriptの実行結果を解析する必要があります。
  • ソース表示では目的の情報が取得できないため、実行結果によって表示されている情報を取得する方法が求められます。
  • 具体的な例として、食べログの地図ページで店情報を取得するための方法を紹介します。
回答を見る
  • ベストアンサー

JavaScript実行結果の情報取得方法について

ホームページの特定の情報を取得したい場合には、ページのソースを取得して HTMLを解析するのが一般的ですが、JavaScriptの実行結果によって表示されているようなものは ソース表示では目的の情報が取得できません。 たとえば、食べログの以下のページで地図に左側に表示される店情報を ページから取得するにはどのような方法がありますでしょうか。 http://tabelog.com/rst/rstmap?clon=139.0445462987061&clat=36.275659157181046&lz=5&LstCat=&LstCatD=&LstCatSD=&LstRev=undefined&LstCnt=0&sw=&LstSitu=undefined&LstCosT=0&LstCos=0&RdoCosTp=2&PG=1

  • mmei
  • お礼率74% (120/161)

質問者が選んだベストアンサー

  • ベストアンサー
  • shockatz
  • ベストアンサー率80% (153/191)
回答No.1

スクレイピングと聞くと(笑 最近のWebサービスはスクレイピング逃れに真剣で、次から次へとAjaxにしやがる 最近はセッション情報まで参照して、httpモジュールで直に呼んでも取得が面倒になってきた Selenium2 が回答かな。 これ使われたら、サービス側では防ぎようがないかも 今のところ全勝です

関連するQ&A

  • Javascript実行結果をサーブレットで読む

    JavascriptとJavaサーブレットの連携について質問させていただきます。 【やりたいこと】 あるJavascript対応のWebサービスから情報を取得し、その情報をJavaサーブレットで読み込む 【困っていること】 まずはJavascriptで情報を取得するためのHTMLファイルを作成し、ブラウザに表示させるところまではできました。 しかし、ページソースそのものが書き換わるわけではないので、Javaサーブレットから読み込む方法がわかりません。 何かやり方があるのでしょうか。 それとも、Javascriptのdocument.write関数で取得した情報をアウトプットするようにしているのですが、それがそもそもの間違いなのでしょうか。 ご存知の方がいらっしゃいましたら、お願いします。

    • ベストアンサー
    • Java
  • Javascriptで生成されたページの情報取得方法

    Javascript初心者です。 ある画面で検索条件を指定して、送信ボタンを押下すると、検索結果をJavascriptで生成したページで表示するサイトがあります。結果はテーブルで表形式に表示されます。 この検索結果をJavascriptかVBscriptで取得したいと考えています。 HTML情報とテキスト情報両方とも取得できたらうれしいです。 document.all(1).innerHTML で取得しても、実際の画面に表示されているHTMLとは異なる情報しか取得できません。 生成後のHTML情報の取得方法をご教授ください。

  • javascriptでソースコードを取得

    今javascriptをやっています。 javascriptで指定したサイトのソースコードが読み込めないものかを試しているのですけど、やりかたが全然わかりません。 普通のWEBページで右クリックをして「ソースの表示」って出るじゃないですか、その内容をそのまま取得できれば良いのです。 とりあえず「Yahoo!JAPAN」のトップページのソースコードを取得できれば良いのです。 ・ソースコードの取得がjavascriptで出来るのか出来ないのか。 ・出来るならどのようなプログラムを書けばよいのか。 ・出来ないのならば他に出来るプログラミング言語は何か。 と言う質問に分かる部分だけ答えてくださればありがたいです。 よろしくお願いします。

  • Javascriptを最後に実行する方法

    サイト内に他のページ情報を表示するJavascriptを記述したところ、 他ページの情報を読み取るのに時間がかかり、結果としてJavascriptの記述部分以降の 表示が遅くなるようです。 いろいろ調べたところでは、Javascriptをページ最後で実行させればよいことは分かったのですが、 Javascriptの表示場所は変えずに、実行だけを最後に行うことはできるのでしょうか? 実行させたいJavascriptは以下の内容です。 <SCRIPT language="JavaScript" src="http://XXXX"></SCRIPT> ※RSSを表示する

  • htmlソースの取得方法

    javascriptで、view-source:を使用しないで、表示したページのhtmlソースを取得する方法を教えてください。

  • javascriptで取得したurlの情報をGETで送る方法がわかりません。

    現在のURLをjavascriptで取得し、その取得した情報を送る方法を教えてください。 以下のソースでURLを取得しgetで送るにはどのようにすればよいのでしょうか? <scripttype="text/javascript"language="javascript"> var url = document.write(document.URL); </script> <a href="./submit.php?document.write(url)">新規登録</a> 以上よろしくお願いします。

  • JavaScriptで情報取得

    JavaScriptで<iframe>内に表示されているHTMLの<title>タグの情報を取得して<iframe>を設置しているHTML内の<h1>タグに記述させています。 前回、同じ内容で質問をして解決出来たと喜んでいたのですが、別ドメインの情報を取得する必要性が出てきました。 別ドメインの情報を取得する事は出来ないのでしょうか? [以前の質問内容] http://pcsoft.okwave.jp/qa3058673.html

  • 食べログの検索結果をVBAで取得したいのですが

    食べログの検索結果をVBAで取得したいのですが 上手くいきません。 例えば、東京都の和食のお店の各お店のページのURLを取得しようと Sub tset() Dim strURL As String Dim objIE As InternetExplorer Dim myObj As Object strURL = "http://tabelog.com/tokyo/rstLst/washoku/" Set objIE = CreateObject("InternetExplorer.Application") objIE.Visible = True objIE.Navigate strURL Do While objIE.Busy = True Or objIE.ReadyState <> 4 DoEvents Loop For Each myObj In objIE.Document.all.tags("a") If myObj.class = "list-rst__rst-name-target js-click-rdlog" Then Debug.Print myObj.href End If Next End Sub としたのですが、 If myObj.class = "list-rst__rst-name-target js-click-rdlog" Then の部分で、 実行時エラー 438「オブジェクトは、このプロパティまたはメソッドをサポートしていません」 と言うエラーになります。 ソースを見ると tlst-1-pref-0-1-0-0-0-0-0-0-0-0-0-0-0-2-1/*-http://tabelog.com/tokyo/A1317/A131710/13014641/" class="list-rst__rst-name-target js-click-rdlog" data-adtype="add_info" data-advertise="shnm" data-onclick-sitecatalyst="rstlst_shnm" data-rd-url="http://rd.tabelog.com/DEV=p/POS=shnm/RCD=13014641/TYPE=add_info/COND=rstlst-1-pref-0-1-0-0-0-0-0-0-0-0-0-0-0-2-1/*-http://tabelog.com/tokyo/A1317/A131710/13014641/">郷土料理おいどん 不動前店</a> なので、 "list-rst__rst-name-target js-click-rdlog" でしぼってsのURLを取得すればいいと思ったのですが なぜエラーになるのでしょうか?

  • JavaScriptで動くページの実行結果をVBで取得する方法

    JavaScriptで動くページの実行結果をVBで取得する方法を教えて頂きたいです。 現在WebBrowserやIEを別途起動して、それに対象のページを表示して コントロールに数字なり文字を入力、送信で 返ってきた結果をHTMLのDocument内から探し出しているのですが、 直接、HTTP?を送受信するなどの方法でやり取りすることは出来ないでしょうか? VB.NET2003+FrameWorks1.1+WindowsXP-PRO環境です。 よろしくお願い致します。

  • webbrowserでのjavascriptを含むソース取得

    webbrowserでのjavascriptを含むソース取得 お世話になっております。 VB 2005を利用しています。 webbrowserを用いてHTMLソースの表示をしようと、 WebBrowser1.Document.Body.OuterHtml と記述したところ、javascriptのソースが表示されません。 同じサイトをIEのソースで表示すると問題なく表示できます。 HttpWebRequest を用いたソースの取得方法はわかるのですが、 事情があって、webbrowser上から行いたいのです。 よろしくアドバイスの程お願いいたします。

専門家に質問してみよう