vba - VBA自动化无法获取innerText(innerHTML,值)
问题描述
所以,我已经多次获得内文。这一次,它根本行不通。尝试了许多替代方案。
首先,我在 VBA 上使用 Selenium 来使用 chromedriver。源网站是“[ http://www.fazenda.df.gov.br/area.cfm?id_area=1536] ”该网站在 iframe 上运行。在尝试从中获取内部文本半小时后,我发现其代码中的链接同样有效:“[ http://publica.agnet.fazenda.df.gov.br/FichaImovel/#/FichaCadastral] ”。最后一个似乎在调用“Angular”上运行。
我需要的带有内文的菜单是一个下拉菜单。作为虚拟值,您可以使用 50868748。它生成的下拉文本由 15 行和一个表格组成。我需要的信息在第 15 行“Nome do Responsável”或表格的第 2 列第 2 行。
我设法放置代码并生成下拉列表,但我无法获取内部文本。
这是我的代码:
Dim iptu As String
Dim driver As New ChromeDriver
With driver
.Start
iptu = 50868748 'dummy
.Get "http://publica.agnet.fazenda.df.gov.br/FichaImovel/#/FichaCadastral"
.FindElementById("inscricaoImovel").Clear
.FindElementById("inscricaoImovel").SendKeys iptu
.FindElementsById("btnCadastro")(2).Click
.Wait (300)
'直到这里,一切正常
Dim label As Object
Dim name As String
Set label = .FindElementsByClass("ng-binding")(91)
'as you can see, i end up using this class(91) to get the value on the table, but i can get from the 15th line too
name = label.getAttribute("innerText") 'Error is here
'我尝试过 .innerText、.innerHTML 等。错误总是“对象不接受属性或方法”错误 438。
end with
chrome 驱动程序是最新的。此外,页面源不包含我需要的信息。
任何人都可以帮助我吗?
解决方案
要获取元素的 InnerText,您需要调用 Text 方法
Set label = .FindElementsByClass("ng-binding")(91)
name = label.Text
要获得内部 Html,
name = label.Attribute("innerHTML")
推荐阅读
- python - 列表中的字符-数字对:当我知道字符/字母时如何获取数字?
- reactjs - 我的代码中有什么错误导致这句话弹出“期望一个赋值或函数调用,而不是看到一个表达式”?
- parallel-processing - 使用 lbzip2 指定 tar 中使用的核心数
- language-agnostic - 有向循环图的人类可读文本表示
- django - 为什么 Django URL 转换器类型不起作用?
- ios - 无法为 AVPlayer 更新 iOS 远程命令中心?
- android - React-Native 0.60.5 启动时崩溃 (Android)
- kubernetes - GKE集群节点上的“可分配cpu”和“分配的cpu限制”有什么区别
- python - asyncpg SELECT WHERE IN 给出 postgresSyntaxError
- user-interface - 如何使 ScrollRect 平滑移动?