安装部署

Gather Platform 支持目前所有的主流操作系统,包括Windows/Mac/Linux。

依赖项

本系统需要如下依赖:

  • JDK 8 及以上
  • Tomcat 8.3 及以上

可选依赖组件:

  • Elasticsearch 5.2 (安装ansj插件)

部署方式

本系统提供一份预编译版本和配置好的依赖环境,只需从百度云下载,按照步骤安装即可使用.从0.1版本开始 Gather Platform 不再默认存储ES,如果需要将数据存储至ES,或者需要数据查看与搜索功能,则需要开启ES.

与不需要ES的版本相比,开启ES之后,搜索平台将可以实现以下功能:

  • 增量抓取
  • 数据查看与搜索
  • 数据统计
  • 数据分析

方式1:极简模式

这种方式不将数据存储至ES,仅存储至磁盘文件,无法实现数据查看与分析功能。

  • 安装JDK 8 ,从ORACLE下载JDK
  • 从百度云下载 密码: v3jm, 预编译安装包和依赖环境,解压apache-tomcat-8.zip,将spider.war放入Tomcat下面的webapp文件夹,tomcat请勿安装到含有空格或者中文等字符的路径下面
  • 进入tomcat目录下的bin文件夹,若是*nix环境运行 startup.sh ,windows环境运行 startup.bat
  • 然后使用浏览器访问 http://localhost:8080/spider 打开数据采集平台Web控制台
  • 抓取下来的数据存储在 TOMCAT_HOME/bin/gather_platform_data 文件夹下,每一个抓取任务单独存储一个json文件,文件名为任务号,每一行为一条网页数据.
  • the pre-compile version of this software can also be downloaded at GoogleDrive Download

方式2: 全功能模式

这种方式可以实现所有的功能,需要配置ES。

  • 从百度云下载 密码: v3jm, 预编译安装包和依赖环境,下载 elasticsearch-5.2.2.zip

注意:如果在启动elasticsearch时发生elasticsearch.bat闪退的问题请修改 JAVA_HOME/jre/lib/security/java.policy 文件,在 grant 段落里面加入

permission java.io.FilePermission "ES安装路径/*", "read";

除此之外,ES和tomcat请勿安装到含有空格或者中文等字符的路径下面.

  • 安装JDK 8 ,从ORACLE下载JDK
  • 解压elasticsearch-5.2.2.zip,如果不使用本项目提供的elasticsearch,则需要安装elasticsearch-ansj插件github
  • 进入bin文件夹,若是*nix环境运行 elasticsearch ,windows环境运行 elasticsearch.bat
  • 使用浏览器访问 http://localhost:9200,显示如下内容则证明elasticsearch安装成功

     {
        "name": "oZJJkBV",
        "cluster_name": "elasticsearch",
        "cluster_uuid": "N2SxzviYQ6mpkApohZTgfg",
        "version": {
          "number": "5.2.2",
          "build_hash": "f9d9b74",
          "build_date": "2017-02-24T17:26:45.835Z",
          "build_snapshot": false,
          "lucene_version": "6.4.1"
        },
        "tagline": "You Know, for Search"
      }
    
  • 解压apache-tomcat-8.zip,将spider.war放入Tomcat下面的webapp文件夹
  • 解压spider.war,打开 spider/WEB-INF/classes/staticvalue.json 配置文件, 将 needEs 配置项改为true
  • 然后打开spider/WEB-INF/classes/mvc-dispatcher-servlet.xml 配置文件,找到输出源配置项,按照下面进行配置:

         <property name="pipelineList">
             <list>
                 <ref bean="commonWebpagePipeline"/>
                 <!--<ref bean="jsonFilePipeline"/>-->
             </list>
         </property>
    

    这样的配置就是不再向Json文件进行输出,而将数据输出至ES进行存储.

  • 进入tomcat目录下的bin文件夹,若是*nix环境运行 startup.sh ,windows环境运行 startup.bat
  • 然后使用浏览器访问 http://localhost:8080/spider 打开数据采集平台Web控制台

方式3:编译安装

  • 安装 JDK 8 以上版本, ORACLE
  • 下载并安装Elasticsearch 5.2, elastic.co
  • 安装ansj-elasticsearch插件, github
  • 运行Elasticsearch
  • 安装Tomcat 8, Apache Tomcat
  • 下载本项目源码包
  • src/resource/staticvalue.json 配置文件, 将 needEs 配置项改为true
  • src/resource/mvc-dispatcher-servlet.xml 配置文件,找到输出源配置项,按照下面进行配置:

         <property name="pipelineList">
             <list>
                 <ref bean="commonWebpagePipeline"/>
                 <!--<ref bean="jsonFilePipeline"/>-->
             </list>
         </property>
    

    这样的配置就是不再向Json文件进行输出,而将数据输出至ES进行存储.

  • 执行 mvn package 编译打包
  • 将spider.war放入Tomcat下面的webapp文件夹
  • 运行tomcat

    方式4:Docker安装

    https://hub.docker.com/r/jobrest/gather-platform/

    感谢hurricanetx提供支持

    Ajax网页渲染器

    注意,以下内容为需要采集ajax网页时的配置项,如果没有需要可以忽略。

    如果待采集的网站是通过ajax进行渲染的,首先需要安装配置ajax渲染器,然后在配置模板时在最下方的是否是ajax网页处打钩,即可采集ajax渲染的网页。下面介绍ajax渲染器的部署方法。

    首先安装phantomjs,然后下载脚本点击下载。建议将此脚本放在phantomjs的bin目录下。需要注意的是,phantomjs需要安装在不包含空格和中文的路径下。 安装完毕之后,使用phantomjs启动此脚本即可,启动时需要带一个端口参数,建议值:7788.如果ajax渲染器与采集平台不在同一台机器或者不使用此端口(7788),需要在src/resource/staticvalue.json 配置文件中修改。

    启动完毕后访问http://localhost:7788/,如可访问,并展示类似下面的信息,则说明安装成功。

    history字段表示最近的几次渲染请求信息,如果刚刚安装好,从未使用过,此处为空。

{
  "status": "OK",
  "history": [
    {
      "proxy": "",
      "jsViewportWidth": 1024,
      "jsViewportHeight": 1024,
      "loadImages": false,
      "timeout": 5,
      "url": "http://news.qq.com",
      "method": "get",
      "data": ""
    }
  ]
}

常见问题

  • 启动报错:找不到XXX文件

    不论采用上述那种方式部署在Windows机器上,均不要部署在含有空格或者中文的路径下。

  • ES启动不了

    如果报max file discriptors相关的错误,则需要系统参数设置,看下这个链接 http://www.tuicool.com/articles/ArYjmaM

    如果报can't run as root则说明使用了root账户启动ES,这是不被允许的。参考https://my.oschina.net/topeagle/blog/591451

    如果在windows中ES启动闪退,如果在启动elasticsearch时发生elasticsearch.bat闪退的问题请修改 JAVA_HOME/jre/lib/security/java.policy 文件,在 grant 段落里面加入

    permission java.io.FilePermission "ES安装路径/*", "read";

  • 启动ES报ansj相关错误

    如果是自己从官网下载的ES则需要另外安装ansj插件,如果对ES不熟悉可以直接使用百度云中安装好的版本。

  • 无法获取数据

    首先确定这个网站使用手工可以访问。

results matching ""

    No results matching ""