Java Nutch2 HBase Hadoop上的Selenium web驱动程序

Java Nutch2 HBase Hadoop上的Selenium web驱动程序,java,selenium,hadoop,hbase,Java,Selenium,Hadoop,Hbase,目前,我们使用Nutch2和HBase后端开发了一个爬虫程序。我们使用SeleniumWeb驱动程序为web解析器创建一个插件。在本地模式下一切都很好。但是,当我们试图使用Nutch部署模式将其部署到集群上时,我们得到了一个错误,该错误声明为“无法成功解析”。下面是错误 java.util.concurrent.ExecutionException:java.lang.NoSuchFieldError: 实例 位于java.util.concurrent.FutureTask.report(Fu

目前,我们使用Nutch2和HBase后端开发了一个爬虫程序。我们使用SeleniumWeb驱动程序为web解析器创建一个插件。在本地模式下一切都很好。但是,当我们试图使用Nutch部署模式将其部署到集群上时,我们得到了一个错误,该错误声明为“无法成功解析”。下面是错误

java.util.concurrent.ExecutionException:java.lang.NoSuchFieldError: 实例 位于java.util.concurrent.FutureTask.report(FutureTask.java:122) 位于java.util.concurrent.FutureTask.get(FutureTask.java:206) 位于org.apache.nutch.parse.ParseUtil.runParser(ParseUtil.java:164) 位于org.apache.nutch.parse.ParseUtil.parse(ParseUtil.java:146) 位于org.apache.nutch.parse.ParserChecker.run(ParserChecker.java:142) 位于org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) 位于org.apache.nutch.parse.ParserChecker.main(ParserChecker.java:214) 在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处 位于sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中 位于java.lang.reflect.Method.invoke(Method.java:497) 位于org.apache.hadoop.util.RunJar.run(RunJar.java:221) 位于org.apache.hadoop.util.RunJar.main(RunJar.java:136) 原因:java.lang.NoSuchFieldError:实例 位于org.apache.http.conn.ssl.SSLConnectionSocketFactory(SSLConnectionSocketFactory.java:144) 位于org.openqa.selenium.remote.internal.HttpClientFactory.getClientConnectionManager(HttpClientFactory.java:71) 位于org.openqa.selenium.remote.internal.HttpClientFactory.(HttpClientFactory.java:57) 位于org.openqa.selenium.remote.internal.HttpClientFactory.(HttpClientFactory.java:60) 位于org.openqa.selenium.remote.internal.ApacheHttpClient$Factory.getDefaultHttpClientFactory(ApacheHttpClient.java:251) 位于org.openqa.selenium.remote.internal.ApacheHttpClient$Factory.(ApacheHttpClient.java:228) 位于org.openqa.selenium.remote.HttpCommandExecutor.getDefaultClientFactory(HttpCommandExecutor.java:96) 位于org.openqa.selenium.remote.HttpCommandExecutor。(HttpCommandExecutor.java:70) 位于org.openqa.selenium.remote.HttpCommandExecutor。(HttpCommandExecutor.java:58) 位于org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.java:97) 位于org.openqa.selenium.firefox.FirefoxDriver.startClient(FirefoxDriver.java:271) 位于org.openqa.selenium.remote.RemoteWebDriver。(RemoteWebDriver.java:117) 位于org.openqa.selenium.firefox.FirefoxDriver.(FirefoxDriver.java:216) 位于org.openqa.selenium.firefox.FirefoxDriver.(FirefoxDriver.java:211) 位于org.openqa.selenium.firefox.FirefoxDriver.(FirefoxDriver.java:207) 位于org.openqa.selenium.firefox.FirefoxDriver.(FirefoxDriver.java:124) 位于org.apache.nutch.store.readable.seleniumhandles.HTTPWebClient$1.initialValue(HTTPWebClient.java:148) 位于org.apache.nutch.store.readable.seleniumhandles.HTTPWebClient$1.initialValue(HTTPWebClient.java:49) 位于java.lang.ThreadLocal.setInitialValue(ThreadLocal.java:180) 位于java.lang.ThreadLocal.get(ThreadLocal.java:170) 位于org.apache.nutch.store.readable.seleniumhandles.HTTPWebClient.getHtmlPage(HTTPWebClient.java:318) 位于org.apache.nutch.store.readable.seleniumhandles.HTTPWebClient.getHtmlPage(HTTPWebClient.java:309) 位于org.apache.nutch.store.readable.parserhandlers.JsoupTokopedia.constructJson(JsoupTokopedia.java:108) 位于org.apache.nutch.store.readable.StoreReadable.addJsonToPage(StoreReadable.java:349) 位于org.apache.nutch.store.readable.StoreReadable.getParse(StoreReadable.java:311) 位于org.apache.nutch.parse.ParseCallable.call(ParseCallable.java:36) 位于org.apache.nutch.parse.ParseCallable.call(ParseCallable.java:23) 在java.util.concurrent.FutureTask.run(FutureTask.java:266)处 位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 运行(Thread.java:745)


看起来Selenium在Hadoop上不起作用。我认为这是相关的问题。是因为Selenium无法在Hadoop上运行,还是对这些问题有任何建议?

用代码编辑您的问题。您是否尝试过在部署模式下使用nutch1?行了吗?好的,马上回来,我会更新问题的@用户2598997实际上,我们在gora中使用了nutch2和hbase后端,这在nutch2上是受支持的,用代码编辑您的问题。您是否在部署模式下尝试过使用nutch1?行了吗?好的,马上回来,我会更新问题的@user2598997实际上,我们使用了nutch2和hbase后端以及gora,这在nutch2上是受支持的