如何在 Crawljax 中获取抓取内容

How to Get Crawl content in Crawljax

我已经使用 Crawljax 抓取动态网页。我可以获得抓取当前 ID、状态和 dom。但是我无法获取网站内容.. 谁能帮帮我??

CrawljaxConfigurationBuilder builder =
            CrawljaxConfiguration.builderFor("http://demo.crawljax.com/");
    builder.addPlugin(new OnNewStatePlugin() {



        @Override
        public String toString() {
            return "Our example plugin";
        }

                @Override
                public void onNewState(CrawlerContext cc, StateVertex sv) {

                    LOG.info("Found a new dom! Here it is:\n{}", cc.getBrowser().getStrippedDom());
                       String name = cc.getCurrentState().getName();
String url = cc.getBrowser().getCurrentUrl();
System.out.println(cc.getCurrentState().getDom());
System.out.println("New State: " + name + "; url: " + url);
                }
    });
    CrawljaxRunner crawljax = new CrawljaxRunner(builder.build());
    crawljax.call();

如何获取dynamic/java脚本网页内容..

要获取网站内容,请使用以下函数:

cc.getCurrentState().getDom()

此函数不是 return DOM 节点,但实际上 return 是页面的 HTML 文本。如果您需要页面内容,这是使用该函数的正确方法,但听起来 return 是一个 DOM 节点,因此名称 getDom 是用词不当。要改为获取 DOM 节点,请使用:

cc.getCurrentState().getDocument()

哪个 return 是 Document DOM 节点。

您可以通过以下方式检索页面内容:

cc.getCurrentState().getDocument().getTextContent()

(编辑:这行不通 - getTextContent 在文档上调用时总是 returns null。)

我们可以获取网站源代码 cc.getBrowser().getStrippedDom());或 cc.getCurrentState().getDocument(); 此编码是 Return 源代码(css/java 脚本文件)..

不是 possible.Because 其测试 tool.This 工具仅检查文本是否可用,将临时数据分配给字段。