赞
踩
1、需保证浏览器驱动为对应版本,官方给的下载驱动的地址为:https://developer.microsoft.com/zh-cn/microsoft-edge/tools/webdriver/
下载完驱动放在如下文件夹
2、edge浏览器默认安装路径为:C:\Program Files (x86)\Microsoft\Edge\Application
3、我解决问题的方法,增加配置代码:
edge_options.add_experimental_option("detach", True) # 解决selenium打开edge浏览器闪退问题
完整代码:
-
-
- def purchase(self):
- down_path = "D:\\Temp"
- diy_prefs = {'profile.default_content_settings.popups': 0,'download.default_directory': '{0}'.format(down_path)}
- edge_options = Options()
- # 使用无头模式
- # edge_options.add_argument('--headless')# 无可视化界面设置 #
- # 禁用GPU,防止无头模式出现莫名的BUG
- # edge_options.add_argument('--disable-gpu')
- edge_options.add_experimental_option("detach", True) # 解决selenium打开edge浏览器闪退问题
- edge_options.add_experimental_option('prefs', diy_prefs)
-
- # 将参数传给浏览器
- browser = webdriver.Edge(options=edge_options)
- browser.set_window_size(1280, 800) # 分辨率 1280*800
-
- # 启动浏览器 uName,pWord
- # url = "https://id1.cloud.huawei.com/CAS/portal/loginAuth.html"
- # browser.get(url)
- # print(browser.title)
-
- # 关闭浏览器
- # browser.quit()
- self.login(browser,uName,pWord)
- pass
-
- def login(self,browser,uName,pWord):
- login_url = "https://id1.cloud.huawei.com/CAS/portal/loginAuth.html"
- browser.get(login_url)
- sleep(10)
- input_elements = browser.find_elements(By.CLASS_NAME, "hwid-input")
- txtUname = input_elements[0]
- txtPword = input_elements[1]
- txtUname.clear()
- txtPword.clear()
- txtUname.send_keys(uName)
- txtPword.send_keys(pWord)
- browser.find_element(By.CLASS_NAME, "hwid-login-btn").click()
- return True
- pass
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。