我是一个重度 RSS 使用者,一般来说,我获取信息有微博,微信,邮件,还有就是 RSS 。每次打开 Chrome 之后第一个打开的就是 Feedly,看看有没有新的内容更新,省去我了一次性打开多个网站的麻烦。但是问题来了,有些网站没有 RSS 怎么办?
前几天在
利器
的群里,看到有在讨论一个叫
Huginn
的东西,一个叫祥子的朋友还很热心的给大家解答一些关于这个的问题,我稍微查了查,发现这个东西可以解决我一直的一个痛点,就决定花时间来倒腾一下。
Huginn 是一个 Github 的开源项目,已经上万 Star 了。简单的说这个东西是一个 IFTTT 形式的东西,可以把所有网页转换成 RSS 输出。更简单的说,就是工作流形式,类似于 iPhone 上的 Workflow。
建议采用 docker
Docker hub地址
官方文档安装教程地址
使用的方式我捉摸了很久才搞定..我会举个把网页转换成RSS的详细的例子。
开始之前首先需要解释几个东西。
网页的格式是 html,RSS 的格式是 xml。
xpath 是你用来确定网页元素的方法,这一步我会有一个很简单的方法来教大家怎么去搞定元素的确定。
由于是工作流的形式,所以我们整个的过程其实有两步,第一步是抓取网页的信息,第二步是返回 RSS 的地址。
下面开始举例子。我们现在要把
我的博客 http://walkginkgo.com/
转换成 RSS。
按照3中说的,我们需要先抓取网页信息。抓取网页信息,要创建一个 Website Agent。
按照图示,名字随便起,其他可以先默认。(全部解释太麻烦)
然后是关键的一步,我们要开始确定网页的元素。
点击
Toggle View
到文本编辑模式。我们要修改我圈出来的两个地方。
我们需要修改url到我们的网址,在这里就是
http://walkginkgo.com/
了。
extract
是我们要提取的信息,我们这里要提取博客的题目,网址,发布日期,简述。
我们现在打开
tesths
这个博客进去来看怎么抓取元素。
在 Chrome 打开,然后选择你要的元素,
右键
选择
Inspect
。可以看到 Chrome 下面的审查元素信息已经出来了。
可以看到我们的元素在
span
标签里,这时候我们如图
右键
选择之后然后复制。
如果多了就全部删除重新运行。
总之真的没有很难,最难的是 xpath 获取元素,但是我已经用了最简单的方式来教大家了,剩下的无论是不是专业学编程的都能很快搞定啦,就看大家怎么去玩这个了。
至于抓取 RSS 的频率,正在测试中..敬请关注更新。
HUGINN:烧录RSS的神器
Huginn安装教程—建立你自己的IFTTT
cantino/huginn