Css 列的输入行
我有一个数据框(df),其中有一列g,其中包含以下数据Css 列的输入行,css,r,for-loop,if-statement,Css,R,For Loop,If Statement,我有一个数据框(df),其中有一列g,其中包含以下数据 g 1 check 2 2267631926 3 <NA> 4 check 5 check 6 check 7 check 8 check 9 check 10 check 11 check 12 check 13
g
1 check
2 2267631926
3 <NA>
4 check
5 check
6 check
7 check
8 check
9 check
10 check
11 check
12 check
13 check
14 check
15 check
16 check
17 check
18 check
19 2090125960
20 <NA>
21 check
22 check
g
1支票
2 2267631926
3.
4支票
5支票
6支票
7支票
8支票
9支票
10支票
11支票
12支票
13支票
14支票
15支票
16支票
17支票
18支票
19 2090125960
20
21支票
22支票
我试图只将数字值(2090125960)输入到一个web链接中,然后使用css选择器逐个跳转其他值(检查,NA),然后执行下一个命令,但是,它正在粘贴完整的列表
` for(i in g)
{
mybrowser$navigate("https://www.google.com")
fg<- mybrowser$findElement(using = 'css selector',"#lst-ib")
fg$clickElement()
Sys.sleep(1)
fg$sendKeysToElement(i)
Go<- mybrowser$findElement(using = 'css selector',"#tsf > div.tsf-p > div.jsb > center > input[type="submit"]:nth-child(1)")
Go$clickElement()
}`
`for(i in g)
{
mybrowser$navigate(“https://www.google.com")
fg我建议将for循环切换为以下格式
g <- df[!is.na(suppressWarnings(as.numeric(df$g))),]
for(i in g)
{
mybrowser$navigate("https://somelink")
fg<- mybrowser$findElement(using = 'css selector',"cssselector")
fg$clickElement()
Sys.sleep(1)
fg$sendKeysToElement(list(as.character(i)))
Go<- mybrowser$findElement(using = 'css selector',"#SubmitButton_button")
Go$clickElement()
}
g我建议将for循环切换为以下格式
g <- df[!is.na(suppressWarnings(as.numeric(df$g))),]
for(i in g)
{
mybrowser$navigate("https://somelink")
fg<- mybrowser$findElement(using = 'css selector',"cssselector")
fg$clickElement()
Sys.sleep(1)
fg$sendKeysToElement(list(as.character(i)))
Go<- mybrowser$findElement(using = 'css selector',"#SubmitButton_button")
Go$clickElement()
}
g我不能100%确定您想要完成什么。您可以创建一个包含g
中所有数值的向量,并在循环中使用此新向量。例如:g@Mr.Zen,谢谢你,它提供了所需的数字数据。我把它做成了一个数据帧,并在循环中使用,但我得到了错误Selenium消息:java.util.ArrayList无法强制转换为java.lang.String错误:摘要:未知错误详细信息:处理命令时发生未知服务器端错误。class:java.lang.ClassCastException进一步详细信息:run errorDetails method>
我不能100%确定要完成什么。您可以创建一个包含所有从g
中提取数值,并在循环中使用此新向量。例如:g@Mr.Zen,谢谢你,它提供了所需的数字数据。我将其设置为数据帧并在循环中使用,但我得到错误Selenium消息:java.util.ArrayList无法转换为java.lang.String错误:摘要:未知错误详细信息:un处理该命令时出现已知的服务器端错误。class:java.lang.ClassCastException进一步详细信息:run errorDetails method>
主要更改在fg$sendKeySome(i)
行中,以前您的这行代码是fg$sendKeySome(df$g)
它将提供来自df$g
的整个列,而不是正在处理的当前项i
。是的,我尝试过,但它没有粘贴任何内容,并给出错误Selenium消息:java.lang.Long无法转换为java.util.List错误:摘要:未知错误详细信息:未知服务器端错误发生在处理命令时被编辑。class:java.lang.ClassCastException进一步详细信息:运行errorDetails方法
看起来好像SendKeyElement函数要求输入为列表格式。我更新了答案以显示新格式,并且在将其应用于sendkey之前将I的数据类型更改为字符n选项。主要的变化是在fg$sendKeyStore(i)
行中,之前您的这行代码是fg$sendKeyStore(df$g)
它将提供来自df$g
的整个列,而不是正在处理的当前项i
。是的,我尝试过,但它没有粘贴任何内容,并给出错误Selenium消息:java.lang.Long无法转换为java.util.List错误:摘要:未知错误详细信息:未知服务器端错误发生在处理命令时被编辑。class:java.lang.ClassCastException进一步详细信息:运行errorDetails方法
看起来好像SendKeyElement函数要求输入为列表格式。我更新了答案以显示新格式,并且在将其应用于sendkey之前将I的数据类型更改为字符不客气。