【总结】RSS Hub使用经验
- Editor: Veagau
- Time: 2019.10.28
一、RSS Hub的使用
力求简单,能用图形界面操作的就用图形界面操作。
Fork RSS Hub仓库到自己的GitHub账号下
将自己的RSS Hub仓库中
download或clone到本地进入到项目文件夹中,在本地部署RSSHub环境
安装依赖。执行如下命令:
npm install
或
yarn
执行上述命令的前提时你已经在计算机上安装了npm或yarn,具体安装过程不赘述。
注意:
- 安装后记得配置全局变量、然后重启项目终端。
- npm安装速度缓慢,不太推荐。
- 有些依赖只兼容python 2.x 。如果没有Python 2.x ,在安装过程中会抛出Error,但实测不影响使用
启动RSS Hub开发环境。
npm run dev
或
yarn dev
在浏览器上打开链接:
localhost:1200,显示RssHub界面即部署成功。
添加脚本路由。修改
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'));
编写路由脚本文件。根据上面指定的路由脚本文件的路径,创建文件夹和js文件
注意:
- 在编写js文件时需要用到一些前端知识,比如网页元素的获取和处理,此处推荐菜鸟教程。
- 脚本文件的框架结构在RSS Hub的文档有说明,具体参考RSS Hub-参与我们。
- 在编写自己的脚本文件时可以参考其他大佬的已经写好的脚本文件,打开里面解析的网页,看一下他是怎么获取并解析网页信息的,然后仿造着用到自己想要解析的网页上就可以了。避免重复造轮子,这样能够极大的节省开发时间。
添加脚本的说明文档。修改
/doc/路径下对应的markdown文档,如/doc/university.md。注意:
样例可参考RSS Hub-参与我们。
务必将
<Route>标签封闭,否则检查不通过。简单内容用
<Route ******/>,复杂内容(带参数表)用<Route *****>参数表</Route>。添加完毕后,进行代码格式标准化,对其提示的警告和错误信息进行修改。
npm run format
测试。
上述操作完成后可在本地测试指定网站的RSS是否生成成功。
如访问链接:
localhost:1200\upc\main\notice,如果返回xml文件内容则表示生成成功。如提示路由为空,则需检查上面的操作是否有问题。
pull request
- Pull Request,简称pr,指请求仓库原有者拉取本人仓库分支,合并到
master分支中。 - 此处为了简化操作、节省时间-
懒,可采用如下方法:- 在自己的github账号上打开已经fork的RSS Hub仓库
- 替换自己修改了的文件,上传自己创建的文件夹和文件,其他的保持不变。
- 返回仓库主页,点击文件列表上方的
pull request按钮。 - 指定
base repository(目标仓库)和head repository(源仓库),即请求将源仓库合并到目标仓库中,一般保持默认即可。 - 点击
create pull request即可创建pr请求。 - 之后等待仓库原有者审核代码,如有问题,则修改后重复上述步骤。
- 没有问题的话,仓库原有者就会将你的分支合并到主分支中
- 之后就可以通过rsshub的服务器访问自己创建的rss了。
- Pull Request,简称pr,指请求仓库原有者拉取本人仓库分支,合并到
二、RSS使用
生成RSS 订阅源后,需要搭配RSS 阅读器才能浏览自己心仪的网页内容。
推荐以下阅读器(待补充):
1. Windows
2. MAC
3. Android
- Rolly
- FeedMe
【总结】RSS Hub使用经验的更多相关文章
- 【RSS】我的RSS使用介绍
早就想写一个有关RSS的文章,一直没时间,今天刚好被现DL说了一波,那就先整理出一篇教程吧.后续说不定还有分享: 分享相关PPT: 一.我使用的服务: Feedly:https://feedly.co ...
- UWP 推荐 - 限时免费的RSS阅读器《RSS 追踪》登录 Windows 10
文/云之幻 前不久,博客作者 Bravo Yeung 写了一篇还算略受欢迎的关于 RSS 的文章 .Net开发者必知的技术类RSS订阅指南. RSS 现在用的人很少了,而且就算是我,也不过是在一周前才 ...
- 利用Docker Hub上的Nginx部署Web应用
Docker Hub上提供了很多镜像,如Nginx,我们不需要自己从ubuntu开始装Nginx再做发布,只需要先下载镜像到本地 docker pull nginx 在/opt下新建文件夹API,将需 ...
- 详解如何使用Docker Hub官方的MySQL镜像生成容器
一直在尝试以官方CentOS镜像为基础,制作基于CentOS的MySQL镜像.但是制作后发现镜像大小已经超过1.5G,这对于一般的Docker镜像来说太臃肿了.Docker Hub官方提供的CentO ...
- 【干货】2个小时教你hexo博客添加评论、打赏、RSS等功能 (转)
备注:该教程基于Hexo 2.x版本,目前Hexo是3.x版本,照本教程实现有可能会出现404错误,笔者目前还未找时间去解决,待笔者找时间解决该问题后,再写一篇该问题的解决教程,给各位读者带来困扰,还 ...
- Atitit rss没落以及替代品在线阅读器
Atitit rss没落以及替代品在线阅读器 1.1. 对RSS的疯狂追逐,在2005年达到了一个高峰.1 1.2. Rss的问题,支持支rss,不支持url1 1.3. ,博客受到社交网络的冲击.s ...
- 做个简单的RSS订阅(ASP.NET Core),节省自己的时间
0x01 前言 因为每天上下班路上,午休前,都是看看新闻,但是种类繁多,又要自己找感兴趣的,所以肯定会耗费不少时间. 虽说现在有很多软件也可以订阅一些自己喜欢的新闻,要安装到手机,还是挺麻烦的.所以就 ...
- RSS阅读器
RSS阅读器(Really Simple Syndication)是一种软件/程序,实质都是为了方便地读取RSS和Atom文档.大概就是实现了订阅式阅读,推送用户感兴趣的新闻,博客等(比如等某位博主更 ...
- 从爬取湖北某高校hub教务系统课表浅谈Java信息抓取的实现 —— import java.*;
原创文章与源码,如果转载请注明来源. 开发环境:Myeclipse,依赖包:apache-httpclient . Jsoup.base64 一.概述 整个系统用Java开发.我们现在要做的是类似于超 ...
随机推荐
- 锐捷交换机如何配置远程管理地址(telnet)
基本命令如下: hostname(config)#username admin password 123456 ------>telnet 登录账号为admin密码为123456 hostna ...
- object literal对象字面量
<JavaScript高级程序设计(第3版)>有个陌生的新词:对象字面量,无法理解.看了一下英文原版,英文是object literal ,还是不太理解.后来想明白了,主要是literal ...
- 电视CI卡详解
CAM卡中文名视密卡,它是一种数字视频条件接收模块,是一个连接电视机与外部信号源的设备.它可以将压缩的数字信号转成电视内容,并在电视机上显示出来.CAM卡(亦称大卡)和智能卡(亦称小卡)配合使用,插入 ...
- [转帖]Flink(一)Flink的入门简介
Flink(一)Flink的入门简介 https://www.cnblogs.com/frankdeng/p/9400622.html 一. Flink的引入 这几年大数据的飞速发展,出现了很多热门的 ...
- 嵌入式02 STM32 实验08 外部中断
一.中断 由于某个事件的发生,CPU暂停当前正在执行的程序,转而执行处理事件的一个程序.该程序执行完成后,CPU接着执行被暂停的程序.这个过程称为中断.(我正在捉泥鳅,但是我妈喊我回家吃饭,我必须回家 ...
- modbus汇总
ModBus协议简介及移植到STM32单片机 https://blog.csdn.net/silent123go/article/details/92440091 Modbus测试工具ModbusPo ...
- 2. 运行Spark Streaming
2.1 IDEA编写程序 Pom.xml加入以下依赖: <dependency> <groupId>org.apache.spark</groupId> <a ...
- svg 直线水平渐变为什么没有效果,必须得是一条倾斜的不水平的直线才有渐变效果呢??
参考:https://blog.csdn.net/u012260672/article/details/80905631 对x1=x2(没有宽度)或者y1=y2(没有高度)的直线(line以及path ...
- pytest_06_fixture之yield实现teardown
上一篇讲到fixture通过scope参数控制setup级别,既然有setup作为用例之前前的操作,用例执行完之后那肯定也有teardown操作. 这里用到fixture的teardown操作并不是独 ...
- 关于ElasticSearch的堆内存设置与优化
1.什么是堆内存?Java 中的堆是 JVM 所管理的最大的一块内存空间,主要用于存放各种类的实例对象.在 Java 中,堆被划分成两个不同的区域:- 新生代 ( Young ).- 老年代 ( Ol ...