打?? ‘ Rss ’
Rss真是个神奇的东西,通过这个xml文件机器之间就可以互相传递信息。对于使用各种网络服务的人来说也会遇到各种各样的Rss,如何在Wordpess上整合和使用这些Rss呢?Friendfeed和SecondBrain都向我们展示了这个使用Rss整合的雏形。 在Wordpress插件中,有个Rss Steam插件,就是一个类似的整合Rss的工具,目前这个插件支持Twitter,Jaiku,Pownce,Delicious,Flickr,Facebook等等,也支持其他RSS2.0的Feed。这样,你在网络上的活动和互动就可以整合到一个页面上了。有点像Facebook的mini-feed,追踪自己的各种活动。 在Worddpress上使用这个插件,如果要在单独的页面上显示Feed,除了要安装RssSteam之外,还需要Exec-PHP类似的插件,以便于在页面中可以执行PHP。安装完成后,在页面中使用php调用RSS_Stream();,就可以显示所有的内容了。 这个插件的问题是支持PHP 5的主机和只支持RSS 2.0的Feed,这样,对于Google的一些Atom Feed就没有作用了。这点也真有点愁人。只能等插件作者慢慢更新了。当然如果Feed过多的时候,调用时间也是个挺大的问题。除此之外,十分完美,查看效果。 [ 阅读全文]
昨天写道关于不支持Rss输入的网站,可以自制Rss的部分,但是Ponyfish的功能实在是太弱了,只能通过URL的辨别来生成Rss,如果对于URL不规则的网站就没有办法了。在昨天提到的介绍文章里面提到了一个网站,Feed43,进去试了试,发现很好但是很难用。Feed43抓取的不只是post的URL,而是整个页面的html代码,然后通过里面的规则过滤,得到输出的函数,再生成的Feed的。虽然复杂,但是却更加容易自定义,这里仅对本blog进行测试。 点击Create your own feed后,系统自动分配你个feed生成页面和feed地址,第一步输入源页面地址。还可以输入字符编码,可惜不支持GB的中文编码,默认的示UTF-8的。reload之后,Feed43抓取整个页面的html,接着就要定义规则了,这个需要你有点html代码的知识。看下抓取的代码,可以发现每个post其实是有规律的,哪怕是使用最笨拙的表格套表格形式的html,也是有规律的。对于我的blog而言,一段post的代码一般是这样的: <div class=”PostHead”> <h1><a title=”Permanent Link to [文章标题]” href=”[文章链接]” rel=”bookmark”>[文章标题]</a></h1> <ul> <li class=”PostAuthor”>[作者]</li> <li class=”PostCateg”>Filed under: <a href=”[分类链接]” title=”View all posts in [文章分类]” rel=”category”>[文章分类]</a></li> </ul> </div> <small class=”PostTime”><strong>Saturday</strong><br />[文章发布时间]</small> <div class=”PostContent”> [文章内容] </div> <div class=”PostDet”> <ul><li class=”PostCom”><a href=”[评论链接]” title=”Comment on [文章内容]“>[评论数量]</a></li></ul> </div> </div> 之后我们需要定义要提取的部分,Feed43提供两个可用的函数{*}通配符和{%}提取函数,把不需要的部分用{*}替换的,把需要导出的部分用{%}代替,然后进行过滤。但是为了每个函数都可以调用,{}前后都必须有字段才能过滤。比如上面这段,因为支取文章链接、文章标题和文章内容三段,就可以用用这个规则: <div class=”PostHead”>{*}href=”{%}” rel=”bookmark”>{%}</a>{*}<div class=”PostContent”>{%}</div> 提取后得到三个结果: {%1} = [文章链接] {%2} = [文章标题] {%3} = [文章内容] 接下来要定义输出的feed了,标题链接和简介都比较容易,主要是Rss item这段需要把上面的结果放到里面,特别是文章内容模版这个部分,有的时候抓取可能忽略了部分html代码段,这内容模版里面需要补上。好在这个blog还是比较规则的,不需要补什么,只要把{%3}放在里面就可以了。 最后就得到了feed。Feed43有多个方案,免费方案里规定每隔6个小时抓取一次源页面,而且源页面的大小不能超过100KB,所以有可能抓取不成。如果注册,还可以对已经生成feed进行管理。 不过,这真是件累人的事。 [ 阅读全文]
虽然Rss Day已经过去了,但是Rss这个话题还没有结束。相当多的人还不了解Rss是什么,怎么使用,能带来多少好处,节约多少时间,更别说玩转Rss了。相当多的人还只是停留在看门户网站的阶段,认为blog还只是日记本的阶段。说blog是媒体或许现在还不成气候(至少中文环境里),但是blog却在Rss推广上起到了相当大的作用。只是对于普通用户的Rss门槛还在,对于高墙内的我们来说Rss变成了相当难绕的坎。今天在尝试一个新的离线Rss阅读器的时候,还真是折腾了好久。好在互联网已经不是中心化的传播工具了,有各种各样的工具帮助我们使用这些广泛存在的Rss了。 1)不支持Rss输出的网站 到目前为止,还有相当多的网站不支持Rss输出,这点对国内的新闻网站尤甚,也包括很多想要吸引流量的,没有开放心态的网站。就跟很多论坛一样,不注册就无法阅读或者下载一样。把html转换成可用的rss工具可以帮我们制作的Rss,有兴趣的人可以从链接查看尝试,这里仅用Ponyfish为例来介绍这种方法。Ponyfish可以不用注册就使用,当然也可以注册来管理已经生成的Rss。将要生成Rss的网站地址(url)复制粘贴到生成页面,Ponyfish会自动抓取页面,在可视化的页面里面,需要点取至少两个Post(主题)的链接,以便生成抓取规则,提交后还会出现可选对话框让你来更改规则: 从上面的图可以看到,其实一般的网站发布内容的url其实都是有一定规则的,这个也就是生成Rss服务的基础,这个时候需要对url的各段参数进行修改,因为自动抓取的post数量不足以生成足够的规则,比如例子中的规则,如果使用以后只能生成2008年5月1日到9日的post的Rss,所以需要点击各个可能会变化的字段,用通配符“*”来代替,这样就可以生成一个比较稳定的Rss了。当然如果源网站发生变化,那么就需要重新生成了。也可能因为url很短或者没有规则,这个方法就无效了。那么可以尝试用其它的生成器来完成这个任务,只能祝您good luck了。 2)被墙的Rss Feed 很遗憾Feedburner无法访问,相当多优秀的blog都是使用这个最流行的Feed烧制服务,以前也有很多中文blog使用这个服务,被墙后转向了Feedsky,但是也不乏使用者。除此之外还有不少网站自身的Rss也无法访问,“墙”相当邪恶的做到了这点,这样的feed也可以用上面的方法,但是有些笨拙,可以找其它的Feed烧制网站(墙外的)来做重新烧制,我没有测试Feedsky是否可以操作,从理论上讲Feedsky也在墙内,应该无法办到。另外介绍两个网站:5z5和feedpass,至少目前这两个网站还没有被屏蔽,以后也难说,但是有一点可以确定的是越冷门的烧制网站越安全,有问题多google。 3)摘要输出和全文输出 网站经营者往往想吸引更多的流量来实现盈利,而Rss消费者却希望在自己的阅读器里看到更加完整的内容,而不用开太多的窗口。这个矛盾是一直存在的,读者只能尽力跟站方沟通要求实现全文Rss输出别无他法。但是很多blog是托管在不同的bsp的,比如不支持全文Rss输出的牛博上的韩寒,在sina上却是可以全文输出(Rss)的。还是只能说good luck吧,韩寒的两个blog上经常是不同步的。在这里,还是再一次想跟牛博说,早些支持全文Rss吧,其实这样对大家都好,从阅读器来的流量往往是坚定的用户,对这些人好些没什么坏处。 4)离线还是在线阅读器 1和2介绍的这些方法其实在在线阅读器都可以很方便的解决,所以推荐使用的还是在线阅读器,但是你的网络连接不是实时的,那么还是离线阅读器来得方便。 在线阅读器尽量选择有https的google reader和bloglines,https安全连接不但能保证你到服务器段之间的加密连接,保证你的安全,还可以绕过“墙”访问到被“墙”的内容。google reader要更好一点,而且可以阅读朋友分享的内容,但是有些人的网络连接中的问题,可能访问google有问题,那么bloglines还是不错的。 还不满意?那试试Newsgator吧,它不但有在线阅读版本,也有离线版本,更加有意思的是两个版本可以互相同步。这样就不会因为错过消息而懊恼了,唯一的不足就是在同步的时候你可能无事可做。 至于其它离线阅读器,要考虑自己的喜好了,离线的阅读器和网页还是有很多区别,可以实现更好的特效更多的功能,比如今天我为了折腾这些Feed而尝试的Time,界面漂亮很多,动态效果也好得多,这是网页无法实现的。只是这个时候面对屏蔽了的feed只能不断的自己想办法了。 关于Feed的话题还能聊好多,比如xFruits,让你实现更多的Rss应用。问题是你是否需要这些呢?对我来讲,能看到自己想看的feed就够了,花去这么多时间在弄这些Feed都是因为“墙”的存在,“墙”真是人倒退的体现。可能说到这里还有人不知道墙是什么,那就补补课吧。 [ 阅读全文]