• Editor: Veagau
  • Time: 2019.10.28

一、RSS Hub的使用

力求简单,能用图形界面操作的就用图形界面操作。

  1. Fork RSS Hub仓库到自己的GitHub账号下

  2. 将自己的RSS Hub仓库中downloadclone到本地

  3. 进入到项目文件夹中,在本地部署RSSHub环境

    1. 安装依赖。执行如下命令:

      npm install

      yarn

      执行上述命令的前提时你已经在计算机上安装了npm或yarn,具体安装过程不赘述。

      注意:

      • 安装后记得配置全局变量、然后重启项目终端。
      • npm安装速度缓慢,不太推荐。
      • 有些依赖只兼容python 2.x 。如果没有Python 2.x ,在安装过程中会抛出Error,但实测不影响使用
    2. 启动RSS Hub开发环境。

      npm run dev

      yarn dev
    3. 在浏览器上打开链接:localhost:1200,显示RssHub界面即部署成功。

  4. 添加脚本路由。修改RSSHub>lib路径下的router.js文件,向其中添加路由信息

    此处可仿照已有路由进行修改,例如:

    //其中get函数的第一项是在浏览器上访问的路径,此路径是位于RSS Hub服务器中的相对路径,正式访问时还需再前面加上:(远程)https://rsshub.app 或(本地)localhost:1200。
    //:type?-值传递给路径的参数信息,如键入https://rsshub.app/upc/main/notice,服务器端就可以通过脚本文件中的参数解析获取到notice,进而可以进行下一步操作。
    //第二项是路由脚本文件的存放路径,当在浏览器中键入https://rsshub.app/upc/main/notice时,它会自动去服务器中的指定路径上寻找脚本文件,此处脚本文件是main.js,指定路径时文件后缀省略。
    router.get('/upc/main/:type?', require('./routes/universities/upc/main'));
  5. 编写路由脚本文件。根据上面指定的路由脚本文件的路径,创建文件夹和js文件

    注意

    • 在编写js文件时需要用到一些前端知识,比如网页元素的获取和处理,此处推荐菜鸟教程
    • 脚本文件的框架结构在RSS Hub的文档有说明,具体参考RSS Hub-参与我们
    • 在编写自己的脚本文件时可以参考其他大佬的已经写好的脚本文件,打开里面解析的网页,看一下他是怎么获取并解析网页信息的,然后仿造着用到自己想要解析的网页上就可以了。避免重复造轮子,这样能够极大的节省开发时间。
  6. 添加脚本的说明文档。修改/doc/路径下对应的markdown文档,如/doc/university.md

    注意:

    • 样例可参考RSS Hub-参与我们

    • 务必将<Route>标签封闭,否则检查不通过。

      简单内容用<Route ******/>,复杂内容(带参数表)用<Route *****>参数表</Route>

    • 添加完毕后,进行代码格式标准化,对其提示的警告和错误信息进行修改。

      npm run format
  7. 测试。

    上述操作完成后可在本地测试指定网站的RSS是否生成成功。

    如访问链接:localhost:1200\upc\main\notice,如果返回xml文件内容则表示生成成功。

    如提示路由为空,则需检查上面的操作是否有问题。

  8. pull request

    • Pull Request,简称pr,指请求仓库原有者拉取本人仓库分支,合并到master分支中。
    • 此处为了简化操作、节省时间-,可采用如下方法:
      1. 在自己的github账号上打开已经fork的RSS Hub仓库
      2. 替换自己修改了的文件,上传自己创建的文件夹和文件,其他的保持不变。
      3. 返回仓库主页,点击文件列表上方的pull request按钮。
      4. 指定base repository(目标仓库)和head repository(源仓库),即请求将源仓库合并到目标仓库中,一般保持默认即可。
      5. 点击create pull request即可创建pr请求。
      6. 之后等待仓库原有者审核代码,如有问题,则修改后重复上述步骤。
      7. 没有问题的话,仓库原有者就会将你的分支合并到主分支中
      8. 之后就可以通过rsshub的服务器访问自己创建的rss了。

二、RSS使用

生成RSS 订阅源后,需要搭配RSS 阅读器才能浏览自己心仪的网页内容。

推荐以下阅读器(待补充):

1. Windows

2. MAC

3. Android

  • Rolly
  • FeedMe

【总结】RSS Hub使用经验的更多相关文章

  1. 【RSS】我的RSS使用介绍

    早就想写一个有关RSS的文章,一直没时间,今天刚好被现DL说了一波,那就先整理出一篇教程吧.后续说不定还有分享: 分享相关PPT: 一.我使用的服务: Feedly:https://feedly.co ...

  2. UWP 推荐 - 限时免费的RSS阅读器《RSS 追踪》登录 Windows 10

    文/云之幻 前不久,博客作者 Bravo Yeung 写了一篇还算略受欢迎的关于 RSS 的文章 .Net开发者必知的技术类RSS订阅指南. RSS 现在用的人很少了,而且就算是我,也不过是在一周前才 ...

  3. 利用Docker Hub上的Nginx部署Web应用

    Docker Hub上提供了很多镜像,如Nginx,我们不需要自己从ubuntu开始装Nginx再做发布,只需要先下载镜像到本地 docker pull nginx 在/opt下新建文件夹API,将需 ...

  4. 详解如何使用Docker Hub官方的MySQL镜像生成容器

    一直在尝试以官方CentOS镜像为基础,制作基于CentOS的MySQL镜像.但是制作后发现镜像大小已经超过1.5G,这对于一般的Docker镜像来说太臃肿了.Docker Hub官方提供的CentO ...

  5. 【干货】2个小时教你hexo博客添加评论、打赏、RSS等功能 (转)

    备注:该教程基于Hexo 2.x版本,目前Hexo是3.x版本,照本教程实现有可能会出现404错误,笔者目前还未找时间去解决,待笔者找时间解决该问题后,再写一篇该问题的解决教程,给各位读者带来困扰,还 ...

  6. Atitit rss没落以及替代品在线阅读器

    Atitit rss没落以及替代品在线阅读器 1.1. 对RSS的疯狂追逐,在2005年达到了一个高峰.1 1.2. Rss的问题,支持支rss,不支持url1 1.3. ,博客受到社交网络的冲击.s ...

  7. 做个简单的RSS订阅(ASP.NET Core),节省自己的时间

    0x01 前言 因为每天上下班路上,午休前,都是看看新闻,但是种类繁多,又要自己找感兴趣的,所以肯定会耗费不少时间. 虽说现在有很多软件也可以订阅一些自己喜欢的新闻,要安装到手机,还是挺麻烦的.所以就 ...

  8. RSS阅读器

    RSS阅读器(Really Simple Syndication)是一种软件/程序,实质都是为了方便地读取RSS和Atom文档.大概就是实现了订阅式阅读,推送用户感兴趣的新闻,博客等(比如等某位博主更 ...

  9. 从爬取湖北某高校hub教务系统课表浅谈Java信息抓取的实现 —— import java.*;

    原创文章与源码,如果转载请注明来源. 开发环境:Myeclipse,依赖包:apache-httpclient . Jsoup.base64 一.概述 整个系统用Java开发.我们现在要做的是类似于超 ...

随机推荐

  1. 锐捷交换机如何配置远程管理地址(telnet)

    基本命令如下: hostname(config)#username admin password 123456  ------>telnet 登录账号为admin密码为123456 hostna ...

  2. object literal对象字面量

    <JavaScript高级程序设计(第3版)>有个陌生的新词:对象字面量,无法理解.看了一下英文原版,英文是object literal ,还是不太理解.后来想明白了,主要是literal ...

  3. 电视CI卡详解

    CAM卡中文名视密卡,它是一种数字视频条件接收模块,是一个连接电视机与外部信号源的设备.它可以将压缩的数字信号转成电视内容,并在电视机上显示出来.CAM卡(亦称大卡)和智能卡(亦称小卡)配合使用,插入 ...

  4. [转帖]Flink(一)Flink的入门简介

    Flink(一)Flink的入门简介 https://www.cnblogs.com/frankdeng/p/9400622.html 一. Flink的引入 这几年大数据的飞速发展,出现了很多热门的 ...

  5. 嵌入式02 STM32 实验08 外部中断

    一.中断 由于某个事件的发生,CPU暂停当前正在执行的程序,转而执行处理事件的一个程序.该程序执行完成后,CPU接着执行被暂停的程序.这个过程称为中断.(我正在捉泥鳅,但是我妈喊我回家吃饭,我必须回家 ...

  6. modbus汇总

    ModBus协议简介及移植到STM32单片机 https://blog.csdn.net/silent123go/article/details/92440091 Modbus测试工具ModbusPo ...

  7. 2. 运行Spark Streaming

    2.1 IDEA编写程序 Pom.xml加入以下依赖: <dependency> <groupId>org.apache.spark</groupId> <a ...

  8. svg 直线水平渐变为什么没有效果,必须得是一条倾斜的不水平的直线才有渐变效果呢??

    参考:https://blog.csdn.net/u012260672/article/details/80905631 对x1=x2(没有宽度)或者y1=y2(没有高度)的直线(line以及path ...

  9. pytest_06_fixture之yield实现teardown

    上一篇讲到fixture通过scope参数控制setup级别,既然有setup作为用例之前前的操作,用例执行完之后那肯定也有teardown操作. 这里用到fixture的teardown操作并不是独 ...

  10. 关于ElasticSearch的堆内存设置与优化

    1.什么是堆内存?Java 中的堆是 JVM 所管理的最大的一块内存空间,主要用于存放各种类的实例对象.在 Java 中,堆被划分成两个不同的区域:- 新生代 ( Young ).- 老年代 ( Ol ...