2016-12-22 15 views
1

Я использую R, версия 3.3.2. Я пытаюсь лом некоторых данных с этого сайта: http://www.dziv.hr/en/e-services/on-line-database-search/patents/click href, которые содержат javascript, используя Rselenium

Я использую Rselenium и мой код выглядит следующим образом:

webElem <- remDr$findElements("css", "iframe") 
remDr$switchToFrame(webElem[[1]]) 
webel <- remDr$findElement(using = "xpath", "//input[@id = 'TB1']")$sendKeysToElement(list(as.character("*"), key = "enter")) 
Sys.sleep(2) 
windows_handles <- remDr$getWindowHandles() 
Sys.sleep(1) 
remDr$switchToWindow(windows_handles[[1]][[2]]) 

Как вы можете видеть, после третьей строки появляются новые окна, и я переключаюсь на это новое окно. В этом новом окне я хотел бы нажать вторую страницу внизу страницы, затем 3 и так далее. Я попробовал несколько решений, например:

remDr$findElement(using = "xpath", "//a[contains(text(),'2')]")$clickElement() 
remDr$findElement(using = "xpath", "//a[@style = 'color:#333333;']")$clickElement() 
remDr$findElement(using = "xpath", "/html/body/form/div[3]/div[1]/div/table/tbody/tr[27]/td/table/tbody/tr/td[2]/a[@href]")$clickElement() 

Non of this solutions works. Я думаю, что это из-за javascript в href? Как я могу выполнить этот javascript и продолжить работу на второй странице? Я знаю для функции executeScript(), но не знаю, как ее использовать.

+0

Вы можете выбрать страницы с помощью 'remDr $ executeScript (" __ doPostBack ('GVRezultati', 'Page $ 2') ; ")' и т. д. – jdharrison

+0

Я сейчас не рядом с компьютером. я буду проверять завтра и принять ваш ответ, если он прав – Mislav

ответ

0

jdharrison ответившим на вопрос:

Вы можете выбрать страницы, используя remDr$executeScript("__doPostBack('GVRezultati','Page$2');") и т.д ...

 Смежные вопросы

  • Нет связанных вопросов^_^