Jun16

【原创】Nutch2.1 部署问题小记

Author: leeon  Click: 8532   Date: 2013.06.16 @ 15:45:50 pm Category: 其他

1.nutch2.1 src版本的包下载后是不能直接使用的,必须通过ant命令进行一次编译。

2.ant编译的时间依赖网速,编译后会在源码包的根目录下生成两个目录,分别为ivy和runtime目录。nutch的核心配置和执行文件,jar包放在runtime下,ivy目录里面的ivy.xml管理依赖关系。数据源的配置在ivy.xml中管理。

3.启动nutch时候提示:

Exception in thread "main" org.apache.gora.util.GoraException: java.io.IOException: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

在ant执行命令之前请先编辑ivy.xml文件开启mysql支持,然后执行ant会自动的下载mysql的jar包。注意这里的顺序,不要线ant再修改ivy文件。

4. nutch支持mysql的方法可以参看 http://my.oschina.net/robolin/blog/82512 这篇文章关于mysql的配置说的是正确的

5. http://agiledon.github.io/blog/2013/03/07/nutch-crawler-crawl-data-and-store-to-mysql/ 此篇文章依据2.1版本讲解了如何使用mysql做为数据源配置nutch,可以参考借鉴。

6. mysql中表及字段的参数配置是由runtime/local/conf目录下的gora-sql-mapping.xml 文件管理的,我们可以根据此配置进行数据存储的调整。

7. 出现如下日志“can't find rules for scope 'outlink'”切此时java的cpu占用率持续100%,而且没有任何数据处理迹象的时候是因为匹配的数据出现的死循环,是因为过滤条件没有写正确导致。

8. 写入db数据报错提示:

java.io.IOException: java.sql.BatchUpdateException: Data truncation: Incorrect string value: '\xE5\xBE\xAE\xE6\xB3\xA2...' for column 'id' at row 1

这是因为主键id的属性编码有问题,必须是utf8编码,且长度最好设置为主键最大长度值,每个编码的varchar最大长度还不一样,utf8设置的最大长度为255。

9. 有些网站在采集的时候会返回403,这里原因很多,但是我们首先要怀疑的是被采集网站是否对useragent做了防采集判断,我们在nutch-default.xml中关于http.agent的配置参数尽量不要写太特殊的值,useragent写成模拟google spider的最好,先模拟采集自己的网站抓访问日志看useragent是否正常。



TAG:   apache nutch 2.1

    评论
    • 提交

    分类

    标签

    归档

    最新评论

    Abyss在00:04:28评论了
    Linux中ramdisk,tmpfs,ramfs的介绍与性能测试
    shallwe99在10:21:17评论了
    【原创】如何在微信小程序开发中正确的使用vant ui组件
    默一在09:04:53评论了
    Berkeley DB 由浅入深【转自架构师杨建】
    Memory在14:09:22评论了
    【原创】最佳PHP框架选择(phalcon,yaf,laravel,thinkphp,yii)
    leo在17:57:04评论了
    shell中使用while循环ssh的注意事项

    我看过的书

    链接

    其他

    访问本站种子 本站平均热度:8823 c° 本站链接数:1 个 本站标签数:464 个 本站被评论次数:94 次