4

XML、RCurlパッケージを使用して、次のURLのいくつかのhtmlテーブルを読み取ろうとしています http://www.nse-india.com/marketinfo/equities/cmquote.jsp?key=SBINEQN&symbol=SBIN&flag=0&series=EQ#

これが私が使っているコードです

library(RCurl)
library(XML)
options(RCurlOptions = list(useragent = "R"))
url <- "http://www.nse-india.com/marketinfo/equities/cmquote.jsp?key=SBINEQN&symbol=SBIN&flag=0&series=EQ#"
wp <- getURLContent(url)
doc <- htmlParse(wp, asText = TRUE) 
docName(doc) <- url
tmp <- readHTMLTable(doc)
## Required tables 
tmp[[13]]
tmp[[14]]

テーブルを見ると、Webページの値を解析できていません。これは、javasciptの評価がその場で行われているためだと思います。今、グーグルクロームで「名前を付けてページを保存」オプションを使用し(mozillaでは機能しません)、ページを保存してから上記のコードを使用すると、値を読み取ることができます。

しかし、ハエの表を読むことができるようにするための回避策はありますか?あなたが助けることができればそれは素晴らしいでしょう。

よろしく、

4

1 に答える 1

1

http://www.nse-india.com/marketinfo/equities/ajaxGetQuote.jsp?symbol=SBIN&series=EQにアクセスし、文字列を解析して、JavaScriptを使用してページを構築しているようです。たぶん、ページ自体をスクレイピングする代わりに、そのデータを取得して解析することができます。

ただし、cURLを使用して適切なリファラーヘッダーを使用してリクエストを作成する必要があるようです。ご覧のとおり、ベアリクエストでそのajaxGetQuoteページにアクセスすることはできません。

ChromeまたはSafariのWebInspectorを使用するか、FirefoxのFirebugを使用することで、適切なヘッダーを読み取って挿入できます。

于 2011-05-23T17:19:38.090 に答える