webdriver 啟動各種瀏覽器
阿新 • • 發佈:2019-02-14
- # -*- coding:utf-8 -*-
import os - import selenium
- from selenium import webdriver
- from selenium.webdriver.common.keys import Keys
- """
- 練習啟動各種瀏覽器:Firefox, Chrome, IE
- 練習啟動各種瀏覽器的同時載入外掛:Firefox, Chrome, IE
- """
def startFirefox(): - """啟動安裝在預設位置的Firefox瀏覽器,並自動轉到 百度 首頁"""
- driver = webdriver.Firefox()
- def startFirefoxWithSpecificLocation():
- """啟動安裝在 非 預設位置的Firefox瀏覽器,並自動轉到 百度 首頁"""
- firefoxBin = os.path.abspath(r"C:\Program Files (x86)\Mozilla Firefox\firefox.exe")
- os.environ["webdriver.firefox.bin"] = firefoxBin
driver = webdriver.Firefox() - def startChrome():
- """啟動Chrome瀏覽器,並自動轉到 百度 首頁
- 啟動Chrome瀏覽器需要指定驅動的位置
- """
chrome_driver = os.path.abspath(r"D:\雲盤\360雲\360雲盤\Selenium2\課程\Selenium_python\Files\chromedriver.exe")
os.environ["webdriver.chrome.driver"] = chrome_driver - driver = webdriver.Chrome(chrome_driver)
- def startIE():
- """啟動IE瀏覽器,並自動轉到 百度 首頁 啟動 IE 瀏覽器需要指定驅動的位置
- """
- ie_driver = os.path.abspath(r"D:\雲盤\360雲\練習程式碼_Python版本\Selenium_python\Files\IEDriverServer.exe")
- os.environ["webdriver.ie.driver"] = ie_driver
- driver = webdriver.Ie(ie_driver)
- '''
- def start_firefox_with_firebug_plug():
- """啟動Firefox,並自動載入外掛Firebug"""
- firefoxBin = os.path.abspath(r"C:\Program Files (x86)\Mozilla Firefox\firefox.exe")
- os.environ["webdriver.firefox.bin"] = firefoxBin
- firefoxProfile = webdriver.FirefoxProfile()
- tempDir = os.getcwd()
- tempDir = os.path.split(tempDir)[0]
- firebugPlugFile = os.path.join(os.path.join(tempDir,"Files"), "firebug-2.0.7.xpi")
- firefoxProfile.add_extension(firebugPlugFile)
- firefoxProfile.set_preference("extensions.firebug.currentVersion", "2.0.7")
- driver = webdriver.Firefox(firefox_profile=firefoxProfile)
- def start_chrome_with_chrometomobile_plug():
- """啟動Chrome,並自動載入外掛Chrome to Mobile"""
- tempDir = os.getcwd()
- tempDir = os.path.split(tempDir)[0]
- chrome_driver_file = os.path.join(os.path.join(tempDir,"Files"), "chromedriver.exe")
os.environ["webdriver.chrome.driver"] = chrome_driver_file
chrome_to_mobile_plug_file = os.path.join(os.path.join(tempDir,"Files"), "Chrome-to-Mobile_v3.3.crx")
chrome_options = webdriver.ChromeOptions()
chrome_options.add_extension(chrome_to_mobile_plug_file)
driver = webdriver.Chrome(executable_path=chrome_driver_file, chrome_options=chrome_options) - '''
def start_firefox_with_default_settings():- """啟動Firefox瀏覽器, 使用本地配置檔案中的選項配置瀏覽器 自動將頁面載入過程匯出為Har檔案,並存放在
- 配置項 extensions.firebug.netexport.defaultLogDir指定的D:\temp\selenium2目錄下
""" - firefox_bin = os.path.abspath(r"C:\Program Files (x86)\Mozilla Firefox\firefox.exe")
- os.environ["webdriver.firefox.bin"] = firefox_bin
- # 使用從別的機器上拷貝來的瀏覽器配置
- firefox_profile = webdriver.FirefoxProfile(os.path.abspath(r"D:\Temp\selenium2\Profiles\mm9zxom8.default"))
- # 使用本地的預設配置
- #firefox_profile = webdriver.FirefoxProfile(r"C:\Users\eli\AppData\Roaming\Mozilla\Firefox\Profiles\mm9zxom8.default")
driver = webdriver.Firefox(firefox_profile=firefox_profile)
driver.get(http://www.baidu.com)
'''
def start_chrome_with_default_settings():
"""啟動Firefox瀏覽器, 使用本地配置檔案中的選項配置瀏覽器"""
tempDir = os.getcwd()
tempDir = os.path.split(tempDir)[0]
chrome_driver = chrome_driver_file = os.path.join(os.path.join(tempDir,"Files"), "chromedriver.exe")
os.environ["webdriver.chrome.driver"] = chrome_driver- chrome_options = webdriver.ChromeOptions()
- chrome_options.add_argument("--test-type")
- #chrome_options.add_argument("user-data-dir="+os.path.abspath(r"D:\Temp\selenium2\User Data"))
chrome_options.add_argument("user-data-dir="+os.path.abspath(r"C:\Users\eli\AppData\Local\Google\Chrome\User Data"))
driver = webdriver.Chrome(executable_path=chrome_driver, chrome_options=chrome_options) - if __name__ == "__main__":
- # 2.啟動瀏覽器時自動載入外掛, 如Firefox -> Firebug ; Chrome -> Chrome to Mobile
- # start_firefox_with_firebug_plug()
- # start_chrome_with_chrometomobile_plug()
- # start_firefox_with_default_settings()
- start_chrome_with_default_settings()
- # 1.啟動各種瀏覽器
- #startFirefox()
- #startFirefoxWithSpecificLocation()
- #startChrome()
- #startIE()