提问人:JoshSavage 提问时间:11/16/2023 最后编辑:JoshSavage 更新时间:11/21/2023 访问量:177
Edge 版本 119 是否破坏了 SeleniumBasic?
Did Edge version 119 break SeleniumBasic?
问:
我使用 VBA/Selenium/Edge 来自动化多个文件。几周前,我使用的是 Edge/Edge 驱动程序版本,一切正常。我星期一来上班,有 Edge 版本。更新了 Edge 驱动程序以匹配 .从那时起,两个 Edge/Driver 都已更新并出现相同的错误。它被挂断的代码部分是窗口的最大化。118
119
119.0.2151.44
119.0.2151.58
带或不带的错误:SwitchToNextWindow
Run-time error '23':
NoSuchWindowError
Window not found: no such window: target window already closed
from unknown error: web view not found
(Session info: MicrosoftEdge = 119.0.2151.58)
(Driver info: msedgedriver = 119.0.2151.58
(33e26e7eb4fba096f2f29de91f90d34b8597be96),platform=Windows NT 10.0.19045 x86_64)
从视觉上看,会发生什么:
打开小框以选择用户名(由处理,因此它会自动消失。
Edge 窗口将打开并显示一条消息,指出用户已被选中。
鼠标移动以单击消息框上的“确定”
尝试最大化窗口时出现代码错误。
Edge 窗口将保持打开状态,直到/除非模块结束。SetCapability
代码:
Set oEdgeObject= CreateObject("Selenium.EdgeDriver")
With oEdgeObject
On Error GoTo SiteHandler
.SetCapability "ms:edgeOptions", "{""excludeSwitches"":[""enable-automation""]}"
.Start
.Wait 1000
Call LeftClick(600, 400)
.Wait 1000
.Window.Maximize
尝试过的事情:
不使用行自动选择配置文件。
已使用(导致错误,)
已使用(不会导致错误,但也不能解决错误。尝试多次使用它,以防万一它认为它又是几个窗口......没用。
在另一台仍具有 Edge 版本的计算机上按原样测试代码SetCapability
SwitchToNextWindow
window does not exist
SwitchToPreviousWindow
118
目标: 打开 Edge,让用户登录,最大化窗口,执行其余代码。
编辑:
尝试在有和不使用 .自动登录,当我手动选择配置文件时,它会做同样的事情。打开一个外观正常的 Edge 窗口,并显示 X 用户已登录,并给出相同的错误。
已尝试在不手动选择和不手动选择配置文件的情况下使用。单击该命令会在小的伪 Edge 窗口中打开网站。该窗口无法最大化并且没有地址栏,并且我认为缺少其他多个内容。不幸的是,我太新了,无法发布图像。get
SetCapability
SetCapability
get
SetCapability
F8
get
编辑版本:更新到 Edge/驱动程序版本 是的,当我说登录用户时,我的意思是 Edge 配置文件。
我尝试了多个 URL。默认情况下,我有一个变量,它根据我正在运行的模块填充网站。我尝试用 Google 地址手动填充变量。每次的结果都一样。SeleniumBasic-2.0.9.0
119.0.2151.72
答:
现在不支持 Selenium 2,我们建议您更新到最新版本的 selenium(selenium 4 或更高版本)以查看此问题是否仍然存在。
评论
.send_keys(PASSWORD