创建多字搜索建议

时间:2016-05-11 15:04:36

标签: elasticsearch search-suggestion

Elasticsearch' [TestNG] Running: C:\Users\sperla\AppData\Local\Temp\testng-eclipse-237279322\testng-customsuite.xml [Utils] Attempting to create E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\Default suite\Default test.html [Utils] Directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\Default suite exists: true [Utils] Attempting to create E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\Default suite\Default test.xml [Utils] Directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\Default suite exists: true FAILED CONFIGURATION: @AfterMethod Quit java.lang.NullPointerException at Login.createAdmin1.Quit(createAdmin1.java:105) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:86) at org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:515) at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:216) at org.testng.internal.Invoker.invokeMethod(Invoker.java:712) at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:823) at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1131) at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:129) at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:112) at org.testng.TestRunner.privateRun(TestRunner.java:778) at org.testng.TestRunner.run(TestRunner.java:632) at org.testng.SuiteRunner.runTest(SuiteRunner.java:366) at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:361) at org.testng.SuiteRunner.privateRun(SuiteRunner.java:319) at org.testng.SuiteRunner.run(SuiteRunner.java:268) at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52) at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86) at org.testng.TestNG.runSuitesSequentially(TestNG.java:1225) at org.testng.TestNG.runSuitesLocally(TestNG.java:1150) at org.testng.TestNG.runSuites(TestNG.java:1075) at org.testng.TestNG.run(TestNG.java:1047) at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:126) at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:75) at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:46) FAILED: CreateAdmin java.lang.NullPointerException at Login.createAdmin1.CreateAdmin(createAdmin1.java:71) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:86) at org.testng.internal.Invoker.invokeMethod(Invoker.java:646) at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:823) at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1131) at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:129) at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:112) at org.testng.TestRunner.privateRun(TestRunner.java:778) at org.testng.TestRunner.run(TestRunner.java:632) at org.testng.SuiteRunner.runTest(SuiteRunner.java:366) at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:361) at org.testng.SuiteRunner.privateRun(SuiteRunner.java:319) at org.testng.SuiteRunner.run(SuiteRunner.java:268) at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52) at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86) at org.testng.TestNG.runSuitesSequentially(TestNG.java:1225) at org.testng.TestNG.runSuitesLocally(TestNG.java:1150) at org.testng.TestNG.runSuites(TestNG.java:1075) at org.testng.TestNG.run(TestNG.java:1047) at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:126) at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:75) at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:46) =============================================== Default test Tests run: 1, Failures: 1, Skips: 0 Configuration Failures: 1, Skips: 0 =============================================== =============================================== Default suite Total tests run: 1, Failures: 1, Skips: 0 Configuration Failures: 1, Skips: 0 =============================================== [Utils] Attempting to create E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\junitreports\TEST-Login.createAdmin1.xml [Utils] Directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\junitreports exists: true [TestNG] Time taken by org.testng.reporters.JUnitReportReporter@27f674d: 11 ms [Utils] Attempting to create E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\testng-failed.xml [Utils] Directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output exists: true [Utils] Attempting to create E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\Default suite\testng-failed.xml [Utils] Directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\Default suite exists: true [TestNG] Time taken by [FailedReporter passed=0 failed=0 skipped=0]: 11 ms [TestNG] Time taken by org.testng.reporters.EmailableReporter2@1cd072a9: 8 ms [TestNG] Time taken by org.testng.reporters.jq.Main@75bd9247: 28 ms [Utils] Problem creating output directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite [Utils] Attempting to create E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite\toc.html [Utils] Directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite exists: true [Utils] Problem creating output directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite [Utils] Attempting to create E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite\Default test.properties [Utils] Directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite exists: true [Utils] Problem creating output directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite [Utils] Attempting to create E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite\index.html [Utils] Directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite exists: true [Utils] Problem creating output directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite [Utils] Attempting to create E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite\main.html [Utils] Directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite exists: true [Utils] Problem creating output directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite [Utils] Attempting to create E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite\groups.html [Utils] Directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite exists: true [Utils] Problem creating output directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite [Utils] Problem creating output directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite [Utils] Problem creating output directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite [Utils] Attempting to create E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite\classes.html [Utils] Directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite exists: true [Utils] Problem creating output directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite [Utils] Attempting to create E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite\reporter-output.html [Utils] Directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite exists: true [Utils] Problem creating output directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite [Utils] Attempting to create E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite\methods-not-run.html [Utils] Directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite exists: true [Utils] Problem creating output directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite [Utils] Attempting to create E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite\testng.xml.html [Utils] Directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\Default suite exists: true [Utils] Attempting to create E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old\index.html [Utils] Directory E:\AutomationDevelopment\ExtremeCloud-POC\ExOL_Login_TestNG\test-output\old exists: true [TestNG] Time taken by org.testng.reporters.SuiteHTMLReporter@2ff4f00f: 30 ms [TestNG] Time taken by org.testng.reporters.XMLReporter@2f7c7260: 3 ms [enter image description here][1] Please suggest me why is this error though following testNG annotations correctly. [1]: http://i.stack.imgur.com/I83dU.png */ 能够以ES索引抓取数据的方式构建多字短语吗?

我希望将这些多字词短语用作我正在构建的小型搜索应用的搜索建议。

我使用Nutch抓取一些网站并使用ES索引已抓取的数据。

我认为,由于ES可以在edgen_n_grams上拆分 - 这不应该那么难......但是,我没有得到我预期的结果。所以现在我问这是否有可能做到这一点?

我的ES索引设置如下

whitespace

PUT /_template/autocomplete_1 { "template": "auto*", "settings": { "index": { "number_of_shards": 1, "number_of_replicas": 1 }, "analysis": { "filter": { "autocomplete_filter": { "type": "edge_ngram", "min_gram": "1", "max_gram": "30", "token_chars": ["letter","digit","whitespace"] } }, "analyzer": { "autocomplete_analyzer": { "type": "custom", "tokenizer": "standard", "filter": [ "lowercase", "autocomplete_filter" ] } } } }, "mappings": { "doc": { "_all": { "enabled": false }, "properties": { "anchor": { "type": "string" }, "boost": { "type": "string" }, "content": { "type": "string", "index_analyzer": "autocomplete_analyzer", "search_analyzer": "standard" },... 是每个Nutch的html正文字段。我正在使用'内容'因为我认为它会产生最多的短语。

1 个答案:

答案 0 :(得分:1)

要创建多字词短语,您需要shingles。更具体地说,this token filter可以组合令牌。