Java Crawljax-动态网页爬网需要jars文件

Java Crawljax-动态网页爬网需要jars文件,java,web-crawler,Java,Web Crawler,我正在尝试使用Crawljax对javascript网页(IFrame html标记中的内容)进行爬网。我已经在应用程序中添加了slf4j、crawljax 2.1和Guava 18.0 jar 弹出窗口中显示的错误消息: cannot find symbol import com.crawljax.core.configuration.CrawljaxConfiguration.CrawljaxConfigurationBuild‌​er; symbol: class CrawljaxCo

我正在尝试使用Crawljax对javascript网页(IFrame html标记中的内容)进行爬网。我已经在应用程序中添加了slf4j、crawljax 2.1和Guava 18.0 jar

弹出窗口中显示的错误消息:

cannot find symbol 
import com.crawljax.core.configuration.CrawljaxConfiguration.CrawljaxConfigurationBuild‌​er; 
symbol: class CrawljaxConfigurationBuilder 
location: class CrawljaxConfiguration.
import com.crawljax.core.CrawlerContext;
import com.crawljax.core.CrawljaxRunner;
import com.crawljax.core.configuration.CrawljaxConfiguration;
import com.crawljax.core.configuration.CrawljaxConfiguration.CrawljaxConfigurationBuilder;
import com.crawljax.core.plugin.OnNewStatePlugin;
import com.crawljax.core.state.StateVertex;

public class CrawljaxExamples {

    public static void main(String[] args) {

        CrawljaxConfigurationBuilder builder
                = CrawljaxConfiguration.builderFor("http://help.syncfusion.com/ug/wpf/default.htm#!documents/overview.htm");
        builder.addPlugin(new OnNewStatePlugin() {

            @Override
            public void onNewState(CrawlerContext context, StateVertex newState) {
            }

            @Override
            public String toString() {
                return "Our example plugin";
            }
        });
        CrawljaxRunner crawljax = new CrawljaxRunner(builder.build());
        crawljax.call();
    }
}
java.lang.ExceptionInInitializerError
Caused by: java.lang.RuntimeException: Uncompilable source code - cannot find symbol
  symbol:   class CrawljaxConfigurationBuilder
  location: class com.crawljax.core.configuration.CrawljaxConfiguration
    at crawljaxexamples.CrawljaxExamples.<clinit>(CrawljaxExamples.java:12)
Exception in thread "main" Java Result: 1
代码:

cannot find symbol 
import com.crawljax.core.configuration.CrawljaxConfiguration.CrawljaxConfigurationBuild‌​er; 
symbol: class CrawljaxConfigurationBuilder 
location: class CrawljaxConfiguration.
import com.crawljax.core.CrawlerContext;
import com.crawljax.core.CrawljaxRunner;
import com.crawljax.core.configuration.CrawljaxConfiguration;
import com.crawljax.core.configuration.CrawljaxConfiguration.CrawljaxConfigurationBuilder;
import com.crawljax.core.plugin.OnNewStatePlugin;
import com.crawljax.core.state.StateVertex;

public class CrawljaxExamples {

    public static void main(String[] args) {

        CrawljaxConfigurationBuilder builder
                = CrawljaxConfiguration.builderFor("http://help.syncfusion.com/ug/wpf/default.htm#!documents/overview.htm");
        builder.addPlugin(new OnNewStatePlugin() {

            @Override
            public void onNewState(CrawlerContext context, StateVertex newState) {
            }

            @Override
            public String toString() {
                return "Our example plugin";
            }
        });
        CrawljaxRunner crawljax = new CrawljaxRunner(builder.build());
        crawljax.call();
    }
}
java.lang.ExceptionInInitializerError
Caused by: java.lang.RuntimeException: Uncompilable source code - cannot find symbol
  symbol:   class CrawljaxConfigurationBuilder
  location: class com.crawljax.core.configuration.CrawljaxConfiguration
    at crawljaxexamples.CrawljaxExamples.<clinit>(CrawljaxExamples.java:12)
Exception in thread "main" Java Result: 1
错误消息:

cannot find symbol 
import com.crawljax.core.configuration.CrawljaxConfiguration.CrawljaxConfigurationBuild‌​er; 
symbol: class CrawljaxConfigurationBuilder 
location: class CrawljaxConfiguration.
import com.crawljax.core.CrawlerContext;
import com.crawljax.core.CrawljaxRunner;
import com.crawljax.core.configuration.CrawljaxConfiguration;
import com.crawljax.core.configuration.CrawljaxConfiguration.CrawljaxConfigurationBuilder;
import com.crawljax.core.plugin.OnNewStatePlugin;
import com.crawljax.core.state.StateVertex;

public class CrawljaxExamples {

    public static void main(String[] args) {

        CrawljaxConfigurationBuilder builder
                = CrawljaxConfiguration.builderFor("http://help.syncfusion.com/ug/wpf/default.htm#!documents/overview.htm");
        builder.addPlugin(new OnNewStatePlugin() {

            @Override
            public void onNewState(CrawlerContext context, StateVertex newState) {
            }

            @Override
            public String toString() {
                return "Our example plugin";
            }
        });
        CrawljaxRunner crawljax = new CrawljaxRunner(builder.build());
        crawljax.call();
    }
}
java.lang.ExceptionInInitializerError
Caused by: java.lang.RuntimeException: Uncompilable source code - cannot find symbol
  symbol:   class CrawljaxConfigurationBuilder
  location: class com.crawljax.core.configuration.CrawljaxConfiguration
    at crawljaxexamples.CrawljaxExamples.<clinit>(CrawljaxExamples.java:12)
Exception in thread "main" Java Result: 1
java.lang.ExceptionInInitializeError
原因:java.lang.RuntimeException:不可编译源代码-找不到符号
符号:类crawlingjaxconfigurationbuilder
位置:class com.crawljax.core.configuration.crawljax配置
位于crawljaxexamples.crawljaxexamples.(crawljaxexamples.java:12)
线程“main”Java结果中出现异常:1
在下面的链接中可以找到相同的代码

有人能告诉我运行这个程序需要什么jars文件吗?或者IDE中是否有任何设置需要更改


谢谢

您似乎正在使用旧版本的crawljax

下载最新版本

将lib文件夹中的所有jar和主文件夹中的crawljax-cli-3.5.1.jar添加为lib路径


经过测试,现在运行良好。

您似乎没有添加依赖项。粘贴您的异常和code@Kumar,添加了代码和异常详细信息;我们仅使用最新版本(3.5.1);还添加了所有jar文件;看来你的自由之路是指旧罐子。删除所有库并从最新包中添加新库。是。。lib path指的是旧罐子我还有一个疑问。。为什么crawljax需要更多的时间来进行单个网站的爬网?您必须参考crawljax网站了解更多信息。@Bass。。我也这样做了;从我的应用程序的lib文件夹中删除所有jar并再次添加引用;仍然不起作用:(