Извлечение HTML-таблиц с веб-сайта - PullRequest
4 голосов
/ 06 мая 2011

Я пытаюсь использовать пакет XML, RCurl для чтения некоторых html-таблиц следующего URL-адреса http://www.nse -india.com / marketinfo / equities / cmquote.jsp?

Вот код, который я использую

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]]

Если вы посмотрите на таблицы, он не смог проанализировать значения с веб-страницы.Я предполагаю, что это из-за некоторой оценки javascipt, происходящей на лету.Теперь, если я использую опцию «сохранить страницу как» в Google Chrome (она не работает в Mozilla) и сохраню страницу, а затем использую приведенный выше код, я могу прочитать значения.

Но есть лиОбойти так, чтобы я мог читать таблицу мухи?Будет здорово, если вы сможете помочь.

С уважением,

1 Ответ

1 голос
/ 23 мая 2011

Похоже, что они создают страницу, используя javascript, открыв http://www.nse -india.com / marketinfo / equities / ajaxGetQuote.jsp? Symbol = SBIN & series = EQ и проанализировав некоторую строку.Возможно, вы могли бы получить эти данные и проанализировать их вместо того, чтобы очищать саму страницу.

Похоже, вам придется создать запрос с правильными заголовками реферера, используя cURL.Как видите, вы не можете просто нажать на эту страницу ajaxGetQuote с пустым запросом.

Вы, вероятно, можете прочитать соответствующие заголовки для вставки, используя Web Inspector в Chrome или Safari, или используя Firebug вFirefox.

...