简介
在开发调试情况下,可以直接采用main函数来启动SeimiCrawler,但是为了便于工程化部署与分发,SeimiCrawler提供了专门的打包插件maven-seimicrawler-plugin用来对SeimiCrawler工程进行打包,打好的包可以直接在服务器上部署运行了。
如何做
首先需要在pom文件中添加添加plugin
<plugin>
<groupId>cn.wanghaomiao</groupId>
<artifactId>maven-seimicrawler-plugin</artifactId>
<version>1.1.0</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>build</goal>
</goals>
</execution>
</executions>
<!--<configuration>-->
<!-- 默认target目录 -->
<!--<outputDirectory>/some/path</outputDirectory>-->
<!--</configuration>-->
</plugin>
接下来,在需要打包的时候,执行mvn clean package
即可,打好包目录结构如下:
.
├── bin #下文将有具体启动参数说明介绍
│ ├── run.bat #windows下启动脚本
│ └── run.sh #Linux下启动脚本
└── seimi
├── classes #Crawler工程业务类及相关配置文件目录
└── lib #工程依赖包目录
启动脚本使用
以shell脚本为例:
-
./bin/run.sh basic
加载所有扫描到的爬虫规则类,并触发名为basic
的爬虫规则开始抓取。 -
./bin/run.sh 8000 basic
加载所有扫描到的爬虫规则类,并触发名为basic
的爬虫规则开始抓取,同时在8000
端口启动一个http服务接受通过制定http接口(参考SeimiCrawler文档)添加抓取请求,查询抓取状态等。 -
./bin/run.sh
加载所有扫描到的爬虫规则类,并全都都处于监听任务状态。就是startAllWorkers()
。 -
./bin/run.sh 8000
加载所有扫描到的爬虫规则类,并全都都处于监听任务状态。就是startAllWorkers()
。于此同时在8000
端口启动一个http服务接受通过制定http接口(参考SeimiCrawler文档)添加抓取请求,查询抓取状态等。