《SeleniumBasic 3.141.0.0 - 在VBA中操作瀏覽器》高級技術之十三:Firefox瀏覽器的自定義配置


Firefox有一個Profile的概念,用於設置用戶自定義的一些內容。例如設置火狐瀏覽器啟動后的默認主頁。

SeleniumBasic中提供了兩種方式,一種是創建FirefoxProfile對象,然后把它賦給FirefoxOptions,接着啟動瀏覽器。

Private WD As SeleniumBasic.IWebDriver
Sub Taobao()
    On Error GoTo Err1
    Dim Service As SeleniumBasic.FirefoxDriverService
    Dim Options As SeleniumBasic.FirefoxOptions
    Dim Profile As SeleniumBasic.FirefoxProfile
    Set WD = New SeleniumBasic.IWebDriver
    Set Service = New SeleniumBasic.FirefoxDriverService
    With Service
        .CreateDefaultService driverPath:="E:\Selenium\Drivers"
        .HideCommandPromptWindow = True
    End With
    Set Profile = New SeleniumBasic.FirefoxProfile
    With Profile .SetPreference "browser.startup.homepage", "https://www.taobao.com/" .SetPreference "browser.startup.page", "1"
    End With
    Set Options = New SeleniumBasic.FirefoxOptions
    With Options
        .BrowserExecutableLocation = "C:\Program Files\Mozilla Firefox\firefox.exe"
        Set .Profile = Profile End With
    WD.New_FirefoxDriver Service:=Service, Options:=Options
End Sub

運行上述代碼,火狐瀏覽器自動打開了淘寶主頁。

 

第二種方式是不創建Profile,直接在FirefoxOptions中使用SetPreference方法。

Private WD As SeleniumBasic.IWebDriver
Sub JD()
    On Error GoTo Err1
    Dim Service As SeleniumBasic.FirefoxDriverService
    Dim Options As SeleniumBasic.FirefoxOptions
    Set WD = New SeleniumBasic.IWebDriver
    Set Service = New SeleniumBasic.FirefoxDriverService
    With Service
        .CreateDefaultService driverPath:="E:\Selenium\Drivers"
        .HideCommandPromptWindow = True
    End With
    Set Options = New SeleniumBasic.FirefoxOptions
    With Options
        .BrowserExecutableLocation = "C:\Program Files\Mozilla Firefox\firefox.exe"
        .SetPreference "browser.startup.homepage", "https://www.jd.com/"
        .SetPreference "browser.startup.page", "1"
    End With
    WD.New_FirefoxDriver Service:=Service, Options:=Options
End Sub

上述程序執行后首頁是京東網。

不過第一種方式選項更加豐富,推薦使用。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM