输入密码字段不显示密码但不抛出错误

问题描述 投票:0回答:1

我正在尝试在 Rstudio 中使用 Rselenium 自动登录,请参见下文

remote_driver <- rsDriver(browser = "firefox", 
                          geckover = "0.33.0",
                          verbose = FALSE, 
                          port = 4457L)

# Assign the remote driver object to a variable
driver <- remote_driver[["client"]]

driver$navigate("https://etopup.gloworld.com:8443/agentportal/agentportal/Application.html#")

我可以轻松找到

username
userID
,没有任何错误:

Sys.sleep(2)
reseller_id_input <- driver$findElement(using = 'id', "gwt-debug-Reseller_ID")
# Supply a value to the input field (e.g., "your_reseller_id")
reseller_id_input$sendKeysToElement(list("Napset"))

user_id_input <- driver$findElement(using = 'xpath', "//div[contains(text(),'User ID:')]//following::input[1]")
#Supply a value to the input field (e.g., "your_user_id")
user_id_input$sendKeysToElement(list("Yodigzy"))

问题是密码部分,当我找到密码字段并发送密码文本时,它不会反映在密码字段中,并且不会显示或显示任何错误:

#Locate the Password input field
password_field <- driver$findElement(using = "id", value = "gwt-debug-Password")
password_field$sendKeysToElement(list("your-password"))

没有此密码,我无法继续登录。这背后有什么逻辑吗?我真的需要帮助。

谢谢

r selenium-webdriver dplyr rselenium
1个回答
0
投票

问题是页面上有两个 INPUT 字段,ID 为“gwt-debug-Password”。页面上的第一个不可见,这就是您看到此行为的原因。

解决此问题的一种方法是使用

findElements()
(复数),然后获取第二个元素。我不知道 R,但经过一番谷歌搜索后,我认为它可能是这样的,

password_field <- driver$findElements(using = "id", value = "gwt-debug-Password")
password_field[[2]]$sendKeysToElement(list("your-password"))
© www.soinside.com 2019 - 2024. All rights reserved.