簡體   English   中英

使用RSelenium登錄使用編寫的網站<td>

[英]Using RSelenium to log in a website written with <td>

我的老板要求我從中國深度事故研究數據庫中獲取一些數據。 我知道我需要先登錄才能選擇使用RSelenium和phantomjs幫助我的工作。

我是HTML和javascript的初學者,基本上沒有經驗。 為了完成任務,我從網站上進行了大量搜索以了解RSelenium。 我可以使用它來正確登錄任何其他網站。 但是,對於此網站http://114.255.167.200:8092/cidasEN/extend/util_login_list.do ,我無法使用sendKeysToElement將用戶名或密碼插入元素。

有關詳細信息,我成功啟動了Selenium服務器,並且可以登錄另一個事故數據庫vufo。

我的代碼是

remDr$open(silent = T)
remDr$navigate("https://www.vufo.de/interner-bereich/internal-area/?L=1")
wxbox<- remDr$findElement("name","user")
wxbox$sendKeysToElement(list(""))     
wxbox<- remDr$findElement("name","pass")
wxbox$sendKeysToElement(list(""))       # Type password provided from GIDAS between  inverted commas " "
wxbutton<- remDr$findElement("name","submit")
wxbutton$sendKeysToElement(list(key="enter"))  

如果輸入用戶名和密碼,我可以成功登錄該網站並獲取想要的數據。 但對於

remDr$open(silent = T)
remDr$navigate("http://114.255.167.200:8092/cidasEN/extend/util_login_list.do")
wxbox<- remDr$findElement("css selector","#name.b_1")
wxbox$sendKeysToElement(list(""))           # Type username provided from GIDAS between  inverted commas " "
wxbox<- remDr$findElement("css selector","#password.b_1")
wxbox$sendKeysToElement(list(""))    

我得到了錯誤:

Error:   Summary: InvalidElementState
 Detail: An element command could not be completed because the element is in an invalid state (e.g. attempting to click a disabled element).
 class: org.openqa.selenium.InvalidElementStateException
 Further Details: run errorDetails method

我認為問題在於此網站是用td而不是div編寫的。 您可以按F12鍵並檢查包含td / td的中文網站的網站。

我不知道如何在td / td之間插入元素的鍵。 看來它與div不同。 我試圖尋找答案。 但是我幾乎找不到任何解決方案。

謝謝。

library(RSelenium)
remDr<-remoteDriver()
remDr$open(silent = T)

remDr$navigate("http://114.255.167.200:8092/cidasEN/extend/util_login_list.do") 

wxbox<- remDr$findElement("css selector","#name.b_1")$clickElement() 

remDr$findElement("css selector","#name.b_1")$sendKeysToElement(list("a"))           # Type username provided from GIDAS between  inverted commas " " 

wxbox<- remDr$findElement("css selector","#password.b_1")$clickElement() 

remDr$findElement("css selector","#password.b_1")$sendKeysToElement(list("a")) 

remDr$findElement("css selector","td:nth-child(5) img")$clickElement()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM