1. 程式人生 > >python-selenum3 第二天啟動瀏覽器

python-selenum3 第二天啟動瀏覽器

per 對象 火狐 mage 變量 編寫代碼 shadow chrom docs

啟動瀏覽器
1.火狐
2.IE
3.谷歌

在第一天創建的項目上,創建文件夾和python文件
在項目上右鍵New一個文件夾,在文件夾下new一個python File即可
新建python File的時候需要輸入名字 溫馨提示:請避免關鍵字

輸入引庫代碼

from selenium import webdriver

報錯。查看pycharm是否有selenium庫
pycharm上 File-Settings

技術分享圖片

技術分享圖片

驗證:
在引庫代碼下,輸入
webdriver.
後出現所有的對象即可
例如
技術分享圖片

下載IE和谷歌的驅動程序

IE驅動:https://docs.seleniumhq.org/download/ 我下載的是32位
技術分享圖片

谷歌驅動:http://chromedriver.storage.googleapis.com/index.html

技術分享圖片

將下載的驅動放到和第一天的geckodriver.exe放到能找到的地方即可。我直接放到了D盤根目錄

準備工作結束


開始編寫代碼
首先是IE驅動,以打開百度網頁為驗證

#啟動IE瀏覽器
driver = webdriver.Ie(executable_path="d:\\IEDriverServer")
#訪問百度
driver.get("http://www.baidu.com")
#驗證 控制臺輸出當前網頁訪問的網址
print(driver.current_url)
#啟動谷歌瀏覽器
driver = webdriver.Chrome(executable_path="d:\\chromedriver.exe")
#訪問百度
driver.get("http://www.baidu.com")
#驗證
print(driver.current_url)
driver = webdriver.Firefox(executable_path = "d:\\geckodriver")
driver.get("https://www.baidu.com")
print(driver.current_url)

報錯情況

火狐報錯1:Except in thread "main" org.openqa.selenium.WebDriverException:
如果非默認安裝火狐瀏覽器的路徑可以參考如下代碼:

os.environ["webdriver.firefox.driver"] = "D:\Program Files\Mozilla Firefox\firefox.exe"
driver = webdriver.Firefox(executable_path = "d:\\geckodriver")
driver.get("https://www.baidu.com")
print(driver.current_url)

火狐報錯2:WebDriverException:Message:Expected browser
可以導入FirefoxBinary模塊

代碼如下:

#頂部導入以下模塊
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary

#修改啟動瀏覽器的代碼
binary = FirefoxBinary("D:\Program Files\Mozilla Firefox\firefox.exe")
driver = webdriver.Firefox(firefox_binary = binary , executable_path = r"d:\\geckodriver")

各瀏覽器的驅動使用方法

可以創建一個目錄專門存放驅動,並把該目錄添加到系統環境變量中,webdriver在啟動的時候會自動到環境變量中的路徑找到不同的驅動

geckodriver.exe ——火狐
chromdriver.exe——谷歌
MicrosoftWebDriver.exe——Edge(win10的e圖標,edge並非是ie)
IEDriverServer.exe——IE
operadriver.exe——opera

python-selenum3 第二天啟動瀏覽器