3 回答

TA貢獻(xiàn)1831條經(jīng)驗(yàn) 獲得超9個(gè)贊
開(kāi)源WebDriverManager可能是您所要求的最接近的解決方案。
WebDriverManager.chromedriver().setup();
WebDriver driver = new ChromeDriver();
如果需要,此代碼將負(fù)責(zé)為您的平臺(tái)下載正確的 webdriver 可執(zhí)行文件并設(shè)置環(huán)境。

TA貢獻(xiàn)1785條經(jīng)驗(yàn) 獲得超8個(gè)贊
我認(rèn)為這是不可能的,因?yàn)椋?/p>
WebDriver 使用協(xié)議與瀏覽器進(jìn)行通信,它被稱(chēng)為WebDriver JSON Wire Protocol
,它實(shí)際上是一個(gè)使用over的RESTful
web 服務(wù)。JSON
HTTP
這是它如何工作的解釋?zhuān)?nbsp;https ://github.com/SeleniumHQ/selenium/wiki/JsonWireProtocol
因此,根據(jù)需要使用驅(qū)動(dòng)程序,您應(yīng)該driver.exe
在外部源上運(yùn)行它,并且應(yīng)該通過(guò)selenium
. 唯一的方法就是改進(jìn)并向 selenium 的源代碼添加大量代碼。

TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超8個(gè)贊
首先hhttps://path_to_file/..是URL,會(huì)話中稱(chēng)為Web 地址是對(duì)Web 資源的引用,該資源指定其在計(jì)算機(jī)網(wǎng)絡(luò)上的位置以及檢索它的機(jī)制。URL 是一種特定類(lèi)型的統(tǒng)一資源標(biāo)識(shí)符 (URI)。HTTP 協(xié)議允許/允許客戶(hù)端應(yīng)用程序(通常是 Web 瀏覽器)創(chuàng)建 HTTP 請(qǐng)求,其中包含它想要聯(lián)系以進(jìn)行信息交換的網(wǎng)站名稱(chēng)。
chromedriver 可執(zhí)行文件位置
在疑難解答 - ChromeDriver中提到,
chromedriver 可執(zhí)行文件的路徑必須由webdriver.chrome.driver系統(tǒng)屬性設(shè)置,并且 chromedriver 二進(jìn)制文件必須在系統(tǒng)路徑中。
因此,Selenium的客戶(hù)端期望WebDriver可執(zhí)行文件位于要添加到OS本機(jī)變量中的WebDriverPATH可執(zhí)行文件的位置。PATH
結(jié)論
因此可以得出結(jié)論,將 WebDriver 可執(zhí)行文件存儲(chǔ)在 GitHub 中并在不同的項(xiàng)目中使用它是不可能的。
瑣事
如果從網(wǎng)絡(luò)路徑訪問(wèn)它們,即使是WebDriver可執(zhí)行文件(例如ChromeDriver或GeckoDriver)也不會(huì)被初始化。您可以在CreatePlatformSocket() 返回錯(cuò)誤中找到詳細(xì)討論:提供了無(wú)效參數(shù)。(0x2726) 嘗試通過(guò)網(wǎng)絡(luò)路徑訪問(wèn) chromedriver
添加回答
舉報(bào)