簡體   English   中英

Python Selenium遠程Webdriver(通過Selenium Grid的Chrome Webdriver),已創建但未打開瀏覽器

[英]Python Selenium Remote Webdriver(Chrome Webdriver via Selenium Grid), created but does not open browser

我有以下設置:

  1. 一個在“ http:// localhost:hubPortNum ”運行的Selenium服務器中心(帶有Jar文件selenium-server-standalone-3.141.5.jar的服務,帶有參數-role hub)。
  2. 運行“ http:// localhost:nodePortNum ”的Selenium節點(帶有Jar文件的服務,其參數為:-Dwebdriver.chrome.driver = ChromeWebdriverPath -role node -port:nodePortNum)。
  3. 我檢查了中心和節點實例的URL,以確保它們可以正常工作。

每當我嘗試通過Python腳本創建遠程Webdriver時:

from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities

desiredCapabilities = DesiredCapabilities.CHROME.copy()
chromeOptionsRemote = webdriver.ChromeOptions()
chromeOptionsRemote.add_argument("--start-maximized")
chromeOptionsRemote.add_argument("--disable-session-crashed-bubble")

initRemoteDriver = webdriver.Remote(options=chromeOptionsRemote, command_executor='http://127.0.0.1:<nodePortNum>/wd/hub', desired_capabilities=desiredCapabilities)
print(initRemoteDriver.current_url)

最后一行確實顯示了當前URL(即“ data :,”),這意味着已創建Webdriver。

但是瀏覽器無法在我的本地計算機上打開 ,這是因為它在后台運行,盡管過去可以使用,但我不知道如何使其可見。

我已完成的故障排除步驟:

  1. 重新安裝最新的硒python軟件包。
  2. 重新下載最新的Selenium服務器jar文件。
  3. 更新Chrome。
  4. 添加chromeOptionsRemote.add_argument(“-no-sandbox”)
  5. 確保本地Webdriver確實打開了:這行:

     self.localDriver = webdriver.Chrome(options=chromeOptionsLocal, desired_capabilities=desiredCapabilities) 

    確實在本地打開瀏覽器(Chromedriver在路徑中)。

在完成這些故障排除步驟之后,我在遠程服務器上嘗試了相同的配置並獲得了相同的結果(瀏覽器不可見),因此我認為這可能是設計使然。

我應該創建什么配置才能使瀏覽器可見?

任何幫助,將不勝感激。

我正在通過Always-Up運行jar文件: https//www.coretechnologies.com/products/AlwaysUp/

問題與會話0隔離有關: https : //stackoverflow.com/a/26752251/2710840

為了不在會話0下運行該應用程序,我啟用了自動登錄功能: 在此處輸入圖片說明

在應用程序下將用戶定義為我的用戶: 在此處輸入圖片說明

並從上下文菜單中選擇了以下選項來執行該應用程序:“在此會話中重新啟動”

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM