我正在使用Nutch来抓取网站,我想解析Nutch抓取的html页面的特定部分.例如,
<h><title> title to search </title></h>
<div id="abc">
content to search
</div>
<div class="efg">
other content to search
</div>
Run Code Online (Sandbox Code Playgroud)
我想用id ="abc"和class ="efg"来解析div元素,依此类推.
我知道我必须创建一个自定义解析的插件,因为Nutch提供的htmlparser插件删除了所有的html标签,css和javascript内容,只留下文本内容.我参考了这个博客http://sujitpal.blogspot.in/2009/07/nutch-custom-plugin-to-parse-and-add.html但我发现这是用于解析html标签,而我想解析具有特定值的属性的html标记.我发现杰里科被提到对解析特定的html标签很有用,但我可以找到任何与杰里科相关的nutch插件的例子.
我需要一些关于如何根据具有特定值的属性的标签来设计解析html页面的策略的指导.
我必须使用 apache nutch 设计一个基于 Java/Java EE 的搜索引擎。我在互联网上进行了搜索,发现了许多有关安装 apache nutch 的文章,但找不到任何涉及 java 程序来访问或控制 apache nutch 进行爬行的文章/教程。
我想在加载应用程序期间将一些数据加载到mysql数据库中.我正在使用Hibernate来管理应用程序的数据库.我可以通过使用Bootstrap在groovy中完成它,但我想用Java实现它.我想提一下,它是基于Spring MVC的Web应用程序.
在互联网上搜索时,我发现但是使用名为import_file的hibernate属性,我可以实现它,但我正在寻找替代路线.
在基于构面的搜索中,在搜索结果中,doc元素具有字符串形式的字段(多于单词),但在构面中,每个值都是字符串形式的单个字.以下是示例solr搜索结果,
<result>
<doc>
<str name="fieldA">abc1 efg1 ijk1</str>
<str name="fieldA">abc2 efg2 ijk2</str>
<str name="fieldA">abc3 efg3 ijk3</str>
<arr name="fieldD">
<str>abc1 efg1 ijk1</str>
<str>abc2 efg2 ijk2</str>
<str>abc3 efg3 ijk3</str>
</arr>
</doc>
</result>
<lst name="facet_counts">
<lst name="facet_queries">
<int name="fieldB:ab">some_number</int>
</lst>
<lst name="facet_fields">
<lst name="fieldA">
<int name="abc1">1</int> I want <int name="abc1 efg1 ijk1">1</int>
<int name="efg1">1</int>
<int name="ijk1">1</int>
</lst>
</lst>
</lst>
Run Code Online (Sandbox Code Playgroud)
Schema.xml包含字段 - fieldA,fieldB,fieldC和fieldD,如下所示
<field name="fieldA" type="text_general" stored="true" indexed="true"/>
<field name="fieldB" type="text_general" stored="true" indexed="true"/>
<field name="fieldC" type="text_general" stored="true" indexed="true"/>
<field name="fieldD" type="text_general" stored="true" indexed="true"/>
Run Code Online (Sandbox Code Playgroud)
和
<copyField …Run Code Online (Sandbox Code Playgroud) 我必须插入字符串形式的数据(也包含时区,即 2013-01-19 00:00:00 +0530),列的数据类型为 DATETIMEOFFSET。我已经尝试过 java.util.date 和 sql.date 但找不到任何解决方案。
我必须通过一个批处理文件执行两个批处理文件.一个批处理文件有一个用于启动服务器应用程序的命令,另一个用于客户端应用程 所以条件是一旦服务器启动,只有客户端应该尝试命中服务器.
我试过跟随的东西,
parent.bat具有以下内容
启动server.bat
启动client.bat
并发现两个应用程序分别运行但无法实现应该的顺序.
我是Hadoop的新手.我想在ubuntu -12.04上安装Hadoop 2.2.0.一切都很顺利.当我执行/sbin/start-dfs.sh时,我收到以下错误消息,
start-dfs.sh: 82: /usr/local/hadoop/sbin/../libexec/hadoop-config.sh:
Syntax error: word unexpected (expecting ")")
Run Code Online (Sandbox Code Playgroud)
我通过互联网搜索并发现了一个与之相关的JIRA问题,网址为 https://issues.apache.org/jira/browse/HADOOP-8432
在安装hadoop时是否有人遇到此问题,是否有人为我的问题找到了解决方案?
我必须在一小时内非常频繁地扫描表格(〜百万次).我有关于rowid的信息(这是一个字节数组).我正在创建用于创建startrow和endrow的rowid,这在我的情况下基本相同.
public String someMethod(byte[] rowid){
if (aTable == null) {
aTable = new HTable(Config.getHadoopConfig(),
Config.getATable());
}
byte[] endRow = new byte[rowId.length];
endrow = System.copyArray(rowId, 0, endRow, 0, rowId.length)
Scan scan = new Scan(rowId , endRow)
//scanner implementation and iteration over the result
(ResultScanner result = aTable.getScanner(scan);) {
for (Result item : result) {
}
}
}
Run Code Online (Sandbox Code Playgroud)
我想知道我是否可以实现一些连接池来提高性能.是否存在HBase Java API中可用的任何池化机制.我使用的是0.96.x版本的HBase.此外,是否有任何配置设置可以提高性能.谢谢
java ×4
nutch ×2
batch-file ×1
hadoop ×1
hbase ×1
hibernate ×1
solr ×1
spring ×1
sql ×1
sql-server ×1