为什么要学习RSS?
假设你有一个习惯,每天早上会浏览各大咨询网站,你所要做的就是登录一个个网站,查看该网站今天有哪些好玩的咨询产生。如果这时候有一个聚合网站包含了你所想要浏览的所有网站的最新资讯,是不是方便了很多,省去了一个个网站打开的繁琐环节。这个聚合网站针对于每一个人是不一样的,也就是千人千面。这个聚合网站就是RSS阅读器,你可以在里面添加你想要浏览的网站,所添加的网站会提供一个rss订阅链接(如果你感兴趣,可以把这个链接所指向的文件下载下来,他就是一个xml文件),这个xml文件每天都会被写入该网站今日最新资讯的摘要,这个订阅链接添加到RSS阅读器就可以了。
什么是RSS?
RSS本质上是一个xml文件,用于描述网页内容的简要信息
格式如下
<?xml version="1.0" encoding="UTF-8"?>
<!-- 定义RSS节点 -->
<rss version="2.0">
<!-- 定义channel频道节点 -->
<channel>
<title>腾讯新闻</title>
<description>腾讯新闻-事实派</description>
<link>http://news.qq.com</link>
<!-- 定义item内容节点,显示最新文章 -->
<item>
<title>新华社评论员:深刻把握“分两步走”的新目标</title>
<description>伟大的事业在承前启后中推进,伟大的目标在接续奋斗中实现。。。。</description>
<link>https://news.qq.com/a/20171021/022469.htm</link>
</item>
<item>
<title>中国计划未来继续扩大南海军力部署?外交部回应</title>
<description>中俄两国在半岛核问题上立场一致,一直保持着密切的沟通协调。。。</description>
<link>https://news.qq.com/a/20171023/034748.htm</link>
</item>
<item>
<title>C919圆国人“大飞机梦”:打造航空产业发展集群</title>
<description>在回顾过去五年的工作和历史性变革时,十九大报告指出,创新驱动发展战略大力实施。。。</description>
<link>https://news.qq.com/a/20171023/000867.htm</link>
</item>
</channel>
</rss>
一个rss代表一个网页的信息摘要,固一个rss文件只能包含一个channel,channel下可以包含多个item,每一个item表示一个该网页下一个条新闻的摘要。
实现RSS订阅?
每一个rss文件中的channel也被称为一个rss feed,实际订阅也是订阅了一个feed。
我使用的Mac电脑,启动自带的apache服务,将编辑好的xml文件放到apache 访问路径下,得到如下订阅链接
http://127.0.0.1/testRss.xml
使用safari访问该订阅链接,浏览器询问是否确定订阅,点击确定,订阅成功(其他浏览器可能会出现直接下载的情况,可以百度 ‘xx浏览器+rss订阅’ 寻找解决方案)。
此刻safari订阅列表里就可以看到订阅信息了。
通过修改testRss文件内容,刷新safar页面,可以看到更新。
如何实时更新呢?Pubsubhubbub是什么?
思考中。。。。。
网友评论