因为薅到了阿里云的羊毛,买入一个轻量云服务器,闲置也不好,所以拿这服务器来部署一个高效获取聚合信息的工具,就是本文的主角:RSSHub

RSSHub是什么?

RSSHub 是一个轻量、易于扩展的 RSS 生成器,可以给任何奇奇怪怪的内容生成 RSS 订阅源。

部署RSSHub需要什么?

部署 RSSHub 需要基本的计算机编程常识,如果您在部署过程中遇到无法解决的问题请到 issues 寻找类似的问题或 向我们提问,我们会尽快给您答复

部署涉及到以下基本编程常识:

  1. 命令行操作
  2. Git
  3. Node.js
  4. npmyarn

部署到可外网访问则可能涉及到:

  1. Nginx
  2. Dockerdocker-compose
  3. Redis
  4. Heroku
  5. Google App Engine

部署RSSHub

先下载RSSHub的源码:

$ git clone https://github.com/DIYgod/RSSHub.git
$ cd RSSHub

下载完成后,需要安装依赖

我们这里使用npm

有些时候时候下载依赖特别慢或者下载不成功的时候,我们可以使用NPM镜像

$ npm install
# 把npm源换为淘宝源
$ npm --registry https://registry.npm.taobao.org install

依赖下载完成后,我们在RSSHub目录下运行:

$ npm start

接着在浏览器内打开网址:http://youserveraddress:1200/ ,出现下面的RSSHub欢迎界面,就可以使用你的RSSHub啦!

始终运行RSSHub

因为是一个阅读工具,所以要让它7*24小时运行工作。

这里就需要用到PM2PM2是具有负载均衡的node应用进程管理器,可以使应用程序在服务器上全天候运行,永久保持应用程序活动,无需停机即可重新加载它们。

首先我们需要全局安装PM2

$ npm install pm2 -g

接着在RSSHub目录:

$ pm2 start lib/index.js --name rsshub

详细使用说明参照 RSSHub指南,替换所有路由例子中的https://rsshub.app/http://youserveraddress:1200即可正常使用。

后记

抓取抖音生成rss失败

显示的:Error: Failed to launch chrome! 看上去是我的Chrome没有安装,所以我们把Chrome安装好即可。

$ curl https://intoli.com/install-google-chrome.sh | bash

运行上面这段脚本安装命令,会自动监测当前的版本安装Chrome并自动查找并安装通常会导致安装失败的所有未满足的依赖项。

安装成功会显示:Successfully installed Google Chrome!

最后我们再检查一下是否还缺少依赖:

$ ldd /opt/google/chrome/chrome | grep "not found"

无返回的话说明CentOS7下Chrome依赖问题基本解决。

打开网址运行:http://youserveraddress:1200/douyin/user/93610979153 ,显示如下抓取就说明正常了。


参考资料