【发布时间】:2020-08-05 13:12:12
【问题描述】:
我希望对 Selenium VBA 中的语法有所帮助。
我正在尝试使用变量谓词“r”来抓取一些表格日期来指定这样的行,但它不起作用。
当用整数值代替谓词 'r' [我认为谓词是环顾四周的正确词] 时,代码确实有效,因此我知道表达式正在找到正确的东西。
For r = 2 To 4
ThisWorkbook.Sheets("Orders").Cells(r, 1).Value = bot.FindElementByXPath("//*[@id='ctl00_mainContent_ucOrdersList_dgOrders']/tbody/tr[r]/td[2]").Text
Next r
似乎应该是可能的。我找到了这个,但不确定它是什么语言或如何将其翻译成 Selenium VBA:
for (int i =1;i<rows.size();i++)
{
max= wd.findElement(By.xpath("html/body/div[1]/div[5]/table/tbody/tr[" + (i+1)+ "]/td[4]")).getText();
所以本质上我该怎么做
tr[" + (i+1)+ "] Selenium VBA 中的位?
提前致谢。
【问题讨论】:
-
使用 & 符号
&在 VB 中加入字符串尝试"tr[" & (i+1) &"]"- 我应该为它写一个答案:-) -
另外 -
predicate几乎意味着根据输入来评估真假。我想你在这里想要parameterise- 这意味着用动态值替换。希望有帮助:-) -
感谢 RichEdwards。对于其他任何人 - 与变量有关的 " 和 & 的空格是至关重要的,但可能会被您的代码编辑器更正。
标签: vba selenium loops xpath predicate