SeleniumBasic中的Proxy類用來設置代理。使用步驟是先聲明和創建Proxy,然后把該變量賦給ChromeOptions,最后啟動瀏覽器。
Private WD As SeleniumBasic.IWebDriver Sub Baidu() On Error GoTo Err1 Dim Service As SeleniumBasic.ChromeDriverService Dim Options As SeleniumBasic.ChromeOptions Dim MyProxy As SeleniumBasic.Proxy Set WD = New SeleniumBasic.IWebDriver Set Service = New SeleniumBasic.ChromeDriverService With Service .CreateDefaultService driverPath:="E:\Selenium\Drivers" .HideCommandPromptWindow = True End With Set MyProxy = New SeleniumBasic.Proxy With MyProxy .Kind = SeleniumBasic.ProxyKind.ProxyKind_Manual .AddBypassAddress "192.168.1.1" .SocksUserName = "yongfu" .SocksPassword = "123456" End With Set Options = New SeleniumBasic.ChromeOptions With Options Set .Proxy = MyProxy End With WD.New_ChromeDriver Service:=Service, Options:=Options WD.URL = "https://www.baidu.com" Debug.Print WD.Capabilities.ToString End Sub
程序的最后,打印瀏覽器的所有能力,從打印結果中可以看到設置代理成功。
另外一種簡單的方式是,通過AddArgument方法。例如:
在Chrome選項中增加參數 .AddArgument "–proxy-server=http://ip:Port"
Dim Options As SeleniumBasic.ChromeOptions Set Options = New SeleniumBasic.ChromeOptions With Options .AddArgument "–proxy-server=http://192.168.1.1:8080" End With WD.New_ChromeDriver Service:=Service, Options:=Options
以上兩個方式有什么區別,我也不太懂。歡迎探討。