go install crawler.club/crawler
crawler --help-api打开通过http取数据的接口-addrhttp服务地址,查看爬虫状态、取数据等http接口,默认为2001-fs打开本地文件存储,默认开启-dir工作目录,默认为./data,抓取回来的文件会存储在./data/fs/-c工作进程数,默认为1-period抓取周期,以秒为单位,默认-1表明只抓取一次
- 查看队列头数据(不从队列删除)
GET http://localhost:2001/api/data?peek=true - 取走队列数据(取走后会从队列删除)
GET http://localhost:2001/api/data - 查看爬虫状态
GET http://localhost:2001/api/status
程序运营后在启动目录下会生成两个隐藏目录.rsslinks和.etlinks。这两个目录分别用作rss类型和web类型抓取的链接去重,避免重复抓取。
web类型的抓取抽取新文章的链接,是通过.etlinks的过滤来实现的,其基于的假设是:从列表页发现新的正文页的抓取模式,定期抓取列表页,抽取其中的所有链接,以前从未见过的链接作为新的文章链接。对于导航链接、广告链接等,在第一轮抓取的时候应该已经抓回,所以从第二轮开始应该都是新文章链接。