如何用Selenium与VBA修改Edge浏览器标签页标题?
解决VBA Selenium执行ExecuteScript修改标签页标题的运行时错误
错误原因
你编写的ExecuteScript语句存在JavaScript语法错误:要赋值给document.title的字符串Kinston MES Inbox没有用引号包裹,导致浏览器无法正确解析这条脚本,进而触发运行时错误。
修正后的代码
将修改标题的语句替换为以下两种正确写法之一:
- 使用单引号包裹字符串:
D.ExecuteScript "document.title = 'Kinston MES Inbox';"
- 使用双引号(注意VBA中双引号需要用两个双引号转义):
D.ExecuteScript "document.title = ""Kinston MES Inbox"";"
额外注意事项
- 执行修改标题的脚本前,务必确认Selenium的上下文已经切换到目标标签页(你的代码中通过循环
SwitchToNextWindow匹配KinstonURL的逻辑是正确的)。 - 尽量避免使用固定时长的
.Wait,可以改用.WaitForPageLoad或等待页面特定元素加载完成的方式,提升脚本的稳定性和兼容性。
内容的提问来源于stack exchange,提问作者John Ritchey
相关产品推荐
相关产品推荐

