Selenium 3.x如何启动3种浏览器(Chrome/Firefox/IE)
2017-11-09 19:53
591 查看
博文章节
博文章节本机环境介绍
Selenium 3x对于Chrome启动的改变
Selenium 3x对于Firefox启动的改变
Selenium 3x对于IE启动的改变
拓展延伸
本机环境介绍
编码语言(Python)(py3env) C:\Users\XXX\iCloudDrive\PycharmProjects\SAT>python -V Python 3.6.2
Selenium版本(3.7.0)
(py3env) C:\Users\XXX\iCloudDrive\PycharmProjects\SAT>pip show selenium Name: selenium Version: 3.7.0 Summary: Python bindings for Selenium
Selenium 3.x对于Chrome启动的改变
from selenium import webdriver if __name__ == '__main__': driver = webdriver.Chrome() driver.get("https://www.baidu.com/") print(driver.title())
如果使用以上代码,将会有如下报错信息:
Traceback (most recent call last): File "C:/Users/XXX/iCloudDrive/PycharmProjects/SAT/sat/browsers/chrome_launcher.py", line 4, in <module> driver = webdriver.Chrome() File "C:\Virtualenv\py3env\lib\site-packages\selenium\webdriver\chrome\webdriver.py", line 62, in __init__ self.service.start() File "C:\Virtualenv\py3env\lib\site-packages\selenium\webdriver\common\service.py", line 81, in start os.path.basename(self.path), self.start_error_message) selenium.common.exceptions.WebDriverException: Message: 'chromedriver' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home[/code]
提示chromedriver没有加入到环境变量PATH中,chromedriver下载地址,注意下载与自己浏览器相匹配版本的chromedriver。修改代码如下:from selenium import webdriver if __name__ == '__main__': chrome_driver_path = "C:\\Users/XXX\\iCloudDrive\\PycharmProjects\\SAT\\sat\\resource\\chromedriver.exe" driver = webdriver.Chrome(chrome_driver_path) driver.get("https://www.baidu.com/") print(driver.title) driver.quit()Selenium 3.x对于Firefox启动的改变
from selenium import webdriver if __name__ == '__main__': driver = webdriver.Firefox() driver.get("https://www.baidu.com/") print(driver.title) driver.quit()
如果使用以上代码,将会有如下报错信息:Traceback (most recent call last): File "C:/Users/XXX/iCloudDrive/PycharmProjects/SAT/sat/browsers/firefox_launcher.py", line 4, in <module> driver = webdriver.Firefox() File "C:\Virtualenv\py3env\lib\site-packages\selenium\webdriver\firefox\webdriver.py", line 144, in __init__ self.service.start() File "C:\Virtualenv\py3env\lib\site-packages\selenium\webdriver\common\service.py", line 81, in start os.path.basename(self.path), self.start_error_message) selenium.common.exceptions.WebDriverException: Message: 'geckodriver' executable needs to be in PATH.
提示geckodriver没有加入到环境变量PATH中,geckodriver下载地址,注意下载与自己浏览器相匹配版本的geckodriver。修改代码如下:from selenium import webdriver if __name__ == '__main__': firefox_driver_path = "C:\\Users/XXX\\iCloudDrive\\PycharmProjects\\SAT\\sat\\resource\\geckodriver.exe" driver = webdriver.Firefox(executable_path=firefox_driver_path) driver.get("https://www.baidu.com/") print(driver.title) driver.quit()
如果以上代码提示Unable to find a matching set of capabilities错误,检查Firefox版本与geckodriver版本的匹配即可Selenium 3.x对于IE启动的改变
from selenium import webdriver if __name__ == '__main__': driver = webdriver.Ie() driver.get("https://www.baidu.com/") print(driver.title) driver.quit()
如果使用以上代码,将会有如下报错信息:Traceback (most recent call last): File "C:/Users/XXX/iCloudDrive/PycharmProjects/SAT/sat/browsers/firefox_launcher.py", line 5, in <module> driver = webdriver.Firefox(executable_path=chrome_driver_path) File "C:\Virtualenv\py3env\lib\site-packages\selenium\webdriver\firefox\webdriver.py", line 154, in __init__ keep_alive=True) File "C:\Virtualenv\py3env\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 151, in __init__ self.start_session(desired_capabilities, browser_profile) File "C:\Virtualenv\py3env\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 240, in start_session response = self.execute(Command.NEW_SESSION, parameters) File "C:\Virtualenv\py3env\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 308, in execute self.error_handler.check_response(response) File "C:\Virtualenv\py3env\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 194, in check_response raise exception_class(message, screen, stacktrace) selenium.common.exceptions.WebDriverException: Message: Unable to find a matching set of capabilities
提示Unable to find a matching set of capabilities,通过Google发现自Selenium3.0开始IE启动需要加载IEDriverServer.exe,InternetExplorerDriver介绍,下载地址。修改代码如下:from selenium import webdriver if __name__ == '__main__': ie_driver_path = "C:\\Users/XXX\\iCloudDrive\\PycharmProjects\\SAT\\sat\\resource\\IEDriverServer.exe" driver = webdriver.Ie(executable_path=ie_driver_path) driver.get("https://www.baidu.com/") print(driver.title) driver.quit()拓展延伸
python selenium 3.7 API Docs 官方地址
相关文章推荐
- selenium webdriver 启动三大浏览器Firefox,Chrome,IE
- Selenium2学习-005-WebUI自动化实战实例-003-三种浏览器(Chrome、Firefox、IE)启动脚本源代码
- 用python做自动化测试--web 自动化测试(2)-Selenium 3.x启动IE, Firefox,Chrome代码示例
- selenium启动firefox、ie、chrome各浏览器方法
- Ubuntu 16.04 selenium webdriver 启动三大浏览器Firefox,Chrome,IE
- selenium webdriver 启动三大浏览器Firefox,Chrome,IE
- selenium_python系列之二 Python启动浏览器Firefox\Chrome\IE
- python+selenium调用浏览器(IE-Chrome-Firefox)实现爬虫功能
- 使用selenium3.X启动firefox浏览器
- selenium2+python如何启动Ie和Chrome进行自动化测试
- selenium驱动浏览器IE、Chrome、FireFox
- 练习启动各种浏览器的同时加载插件:Firefox, Chrome, IE
- [Selenium] 如何使用Chrome Options 定制测试Chrome 浏览器的特定属性 (类似FirefoxProfiles)
- Selenium如何分别启动IE、firefox、chrome浏览器
- selenium webdriver 以署理proxy方式启动firefox,ie,chrome
- Selenium启动加载用户配置的浏览器(Chrome/Firefox)
- python3 Selenium启动加载用户配置的浏览器(Chrome/Firefox)
- Python+Selenium 环境配置之Firefox,IE,Chrome几种浏览器运行
- selenium连接浏览器 Chrome IE Firefox java
- selenium如何分别启动IE、firefox、chrome浏览器