Chrome 以 "Data;" 和 selenium 打开

Chrome opens with "Data;" with selenium

我是 Selenium 的新手,正在尝试通过 selenium 驱动程序从 Chrome 打开 localhost:3000 页面。 代码是:

import com.google.common.base.Function;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebDriverException;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
public class SeleniumTests {

    public static void main(String[] args) {


        System.setProperty("webdriver.chrome.driver", "C://chromedriver_win32//chromedriver.exe");
        WebDriver driver = new ChromeDriver();              
        driver.get("localhost:3000");
    }

}

但是,这会打开我的 chrome window 和 "data;" 。 chrome 版本为 50.0.2661.94

知道确切的问题是什么吗?

指定您正在使用的协议,因此请使用 http://localhost:3000 而不是 localhost:3000。如果这没有帮助,请参阅 Chromium 问题跟踪器上的评论 here

是的,它将从数据开始。在数据之后,尝试给出 URL.The 'data:,' URL 只是 chrome 驱动程序在启动 chrome 时导航到的默认地址。所以这本身并不一定意味着有任何问题。

import com.google.common.base.Function;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebDriverException;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
public class SeleniumTests {

public static void main(String[] args) {


    System.setProperty("webdriver.chrome.driver", "C://chromedriver_win32//chromedriver.exe");
    WebDriver driver = new ChromeDriver();              
    driver.get("https://www.google.co.in/?gfe_rd=cr&ei=KxAzV8-KEJPT8gfT0IWYAw");
}

}

它将打开成功。如果您有任何疑问,请回复。快乐学习..:-)

我 运行 遇到过类似的情况,我的解决方法只是 将 chrome webdriver 升级到最新版本(在我的例子中是 V2.27).

显示 Data; 而不是实际应用程序 URL 的原因是:

WebDriver driver = new RemoteWebDriver(new URL("http://<host>:<port>/wd/hub"), desiredCapabilities);

创建失败。相反,driver 对象持有一个 null 值。

所以chrome驱动升级后,已经正确创建,问题解决。

希望这对仍然卡住的人有所帮助!

确保您使用的是 latest release of ChromeDriver(目前为 2.28)。 data:, 我有同样的问题。我错误地下载了旧版本并遇到了指定 URL 未打开的问题,只是 data:,

我也遇到了同样的问题。我将 ChromeDriver 更新为 the latest version 并修复了它。

只需将 "chromedriver.exe" 替换为 latest release of ChromeDriver

我在 python 中使用 selenium grid 时发生了这种情况,并且是由与其他答案所建议的不同的东西引起的(至少在我的情况下)。

事实证明,在创建驱动程序对象(并连接到 chrome)之后但在它被指示导航到 URL 之前引发了运行时异常。这一切都在 celery 任务队列上运行,所以我很容易错过。因此,如果更新 chrome 驱动程序不起作用,请仔细检查您是否正确导航到 URL 并且没有错误等。

例如:

driver = webdriver.Remote(
        command_executor="http://<ip>:4444/wd/hub",
    )

# a function here raised a runtime exception, causing chrome to launch
# but sit there with the default URL "data;/"

driver.get("www.google.com")

如果您使用的是 Codeception,请使用以下命令开始测试:

$I->amOnPage('/');

您需要向 运行 添加两件事:

首先 - 你应该使用 http://localhost:3000

其次 - 在创建 webDriver 之前必须使用调试端口:options.addArguments("--remote-debugging-port=9225");

完整代码:

    WebDriverManager.chromedriver().setup();
    ChromeOptions options = new ChromeOptions();
    options.setExperimentalOption("useAutomationExtension", false);
    options.addArguments("--remote-debugging-port=9225");
    WebDriver driver = new ChromeDriver(options);

如有任何疑问,请留下评论