一、明确一点:
- selenium只能处理浏览器
- chrome弹出是否打开外贸应用程序的窗口是DOM外的非浏览器
- 因此,先确认是否能定位到元素,如能定位,就使用alert。如不能定位元素就优选想到非浏览器窗口。
二、解决办法
prefs = {"protocol_handler": {"excluded_schemes": {"https://xxx.com": {"aliim": False}}}}
option.add_experimental_option("prefs", prefs)
browser = webdriver.Chrome(ChromeDriverManager().install(), options=option)
三、尝试过使用protocol_handler.excluded_schemes,但不成功
option.add_experimental_option("prefs", {'protocol_handler.excluded_schemes.aliim': True})
四、参考资料:
- https://blog.csdn.net/qq_26819733/article/details/126799304
- https://blog.csdn.net/auglost/article/details/10144193#comments
- https://www.5axxw.com/questions/content/yhke2q
- https://blog.csdn.net/c_xiazai12345/article/details/120654809 (此链接,主要排除是否是iframe不对,而导致找不到alert)