java - 数据库问题

标签 java selenium

我正在尝试使用 Serritor 抓取动态网页,但出现问题:

这是我的代码:

 public class MyCrawler extends BaseCrawler {

    public MyCrawler() {
        String pathToDriver = ".//ChromeDriver//chromedriver.exe";
        System.setProperty("webdriver.chrome.driver", pathToDriver);
        config.setWebDriver(new ChromeDriver());
        config.setFilterOffsiteRequests(true);
        config.addSeedAsString("http://yourspecificsite.com");
        config.setCrawlingStrategy(CrawlingStrategy.DEPTH_FIRST);
        config.setDelayBetweenRequests(Duration.ofSeconds(1));

    }

}

这是返回:

Exception in thread "main" java.lang.NoClassDefFoundError: org/openqa/selenium/htmlunit/HtmlUnitDriver
at com.github.peterbencze.serritor.internal.CrawlerConfiguration.<init>(CrawlerConfiguration.java:47)
at com.github.peterbencze.serritor.api.BaseCrawler.<init>(BaseCrawler.java:68)
at serritor_versuch2.MyCrawler.<init>(MyCrawler.java:21)
at serritor_versuch2.run.main(run.java:5)
Caused by: java.lang.ClassNotFoundException: org.openqa.selenium.htmlunit.HtmlUnitDriver
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 4 more

最佳答案

Exception in thread "main" java.lang.NoClassDefFoundError: org/openqa/selenium/htmlunit/HtmlUnitDriver

以上异常清楚地表明未找到 HtmlUnitDriver 类。如果您使用 Maven,则可能应该在 pom.xml 文件中添加 Maven 依赖项。

不确定您使用的是哪个版本,但这是最新版本。

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-htmlunit-driver</artifactId>
    <version>2.52.0</version>
</dependency>

如果您使用 gradle 或任何其他依赖项管理工具,请相应地查找:Maven Repository

如果您没有使用任何依赖管理工具,您应该下载 jar 文件并将其放入类路径中。

关于java - 数据库问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42672888/

相关文章:

java - 使用 Selenium WebDriver 的 Spring Boot Web 应用程序

java - 在 wsdl 文件中描述字符串数组

java - 如何在 Selenium WebDriver 中将 Dropdown 与 ng-model 一起使用?

selenium - 如何使用机器人框架和 selenium 读取 Web 控制台输出?

java - 为 POS 打印机编写正确的 ESC/POS 命令

firefox 26 和 webdriver 2.39.0 升级不起作用

unit-testing - 在 Selenium 中定义自定义操作

java - 如何将有效负载发送到 selenium 中的文本区域

java - 如何更改 XSSFTextBox 上的字体

java - 如何从 java 应用程序编译和创建 JAR?