html - 使用带有 SeleniumBasic 的 Excel VBA 的 Web 自动化。我无法访问我找到的值
问题描述
我正在尝试加载我找到的消息,WDrv.FindElementsByXPath("//*[@id='divMessageLines']/div")
但我不知道如何访问我找到的各个值。每次搜索都有未知数量的值。
在这个例子中,如果我做一个 .count 我有 2 个匹配的元素:
Dim cntr As Integer
cntr = WDrv.FindElementsByXPath("//*[@id='divMessageLines']/div").Count
‘cntr = 2
我可以使用 div 1和 div[2]访问这两个值中的每一个。这很好,但并不总是有两个值:
cntr = WDrv.FindElementsByXPath("//*[@id='divMessageLines']/div[1]").Count
‘cntr = 1
如果我可以使用变量,我可以遍历所有元素。但它似乎不喜欢那样。如果我可以用例如 div[i] 替换 div 1和 div[2] 那就太好了,但是当我尝试这个时,cntr 总是等于 0,所以我认为它不起作用:
Cntr = WDrv.FindElementsByXPath("//*[@id='divMessageLines']/div[i]").Count
‘cntr = 0
我有这个,但它什么也不做并停止运行程序(没有错误消息):
Dim div As TableElement
Set div = WDrv.FindElementsByXPath("//*[@id='divMessageLines']/div")
所以,我不确定如何访问各个元素,有没有办法?
解决方案
怎么样的东西
Dim itm
For Each itm in WDrv.FindElementsByXPath("//*[@id='divMessageLines']/div")
'do something with itm
Debug.Print itm.Text ' for example
Next itm
推荐阅读
- python - 获取一行 pandas DataFrame 作为具有正确类型的 dict-like 对象
- rest - 需要对 REST API 请求/响应进行加密/解密?
- excel - 创建面积图时省略类别
- javascript - 如何使用数组中的参数连续进行 api 调用
- html - Favicon 从远程加载时运行良好,而对本地文件不起作用,我该如何解决?
- batch-file - 即使输入正确,脚本也不显示符号
- python - tkinter Combobox 插入导致最多 2 行并包含在顶行的大括号中
- powerbi-desktop - 如何在powerbi中仅提取字母数字值
- php - ldap search 警告:ldap_mod_replace(): Modify: No such object in
- python - Boto3 未返回请求的所有资源