2013-10-11 5 views
1

Как говорится в сообщении Accessing the Selenium API in R на этом веб-сайте, я могу создать webdriver. Однако я не могу получить детали элемента так же, как Python. Могу я знать, как это сделать?Использование R для подключения Selenium-Server-Standalone

Я хотел бы, чтобы очистить футбольные матчи таблица каждого раунда ...

# using R 
library(RCurl) 
library(RJSONIO) 
library(XML) 

# running selenium 
system("java -jar selenium-server-standalone-2.35.0.jar") 
baseURL<-"http://localhost:4444/wd/hub/" 
server<-list(desiredCapabilities=list(browserName='firefox',javascriptEnabled=TRUE)) 

getURL(paste0(baseURL,"session"), 
     customrequest="POST", 
     httpheader=c('Content-Type'='application/json;charset=UTF-8'), 
     postfields=toJSON(server)) 

serverDetails<-fromJSON(rawToChar(getURLContent('http://localhost:4444/wd/hub/sessions',binary=TRUE))) 
serverId<-serverDetails$value[[1]]$id 

# navigate to 7m.cn 
URL = "http://data2.7m.cn/history_Matches_Data/2009-2010/92/en/index.shtml" 
getURL(paste0(baseURL,"session/",serverId,"/url"), 
     customrequest="POST", 
     httpheader=c('Content-Type'='application/json;charset=UTF-8'), 
     postfields=toJSON(list(url=URL))) 

Ниже приведены коды в Python, чтобы получить детали HTML элементных 7m.cn. Кроме того, можно предложить лучшую идею? Благодарю.

# using Python 
import codecs 
import lxml.html as lh 
from selenium import webdriver 

URL = 'http://data2.7m.cn/history_Matches_Data/2009-2010/92/en/index.shtml' 
browser = webdriver.Firefox() 
browser.get(URL) 
content = browser.page_source 
browser.quit() 

ответ

2

Вы можете использовать пакет relenium (Selenium для R). Отказ от ответственности: Я один из разработчиков.

require(relenium) 

firefox <- firefoxClass$new() 
firefox$get('http://data2.7m.cn/history_Matches_Data/2009-2010/92/en/index.shtml') 
content <- firefox$getPageSource() 
firefox$close() 
Смежные вопросы