Posts Tagged ‘rss’

Get_OPML 插件设计思路分析

星期三, 七月 2nd, 2008

做这个插件的起初想法是想把自己的好友RSS全部导入到抓虾里面去。我记得刚注册抓虾的时候,把博客地址填进去,它就自动抓取所有好友的RSS,挺方便的。后来不小心被我删除了,再怎么弄也弄不回去了,于是我就萌发了做一个提取所有好友的RSS地址的插件的想法,接下来就开始做了。

这个插件分为几个部分:

1.从数据库中提取所有链接的URL。这个就用一条SQL语句,从 wp_links 表中提取这些数据就好了。

2.根据好友URL去下载他的首页。这个说起来本是一件很简单的事,PHP里面有 file_get_contents() 这个函数,可以自动把远程文件的数据存入一个变量中。这个函数需要服务器开启 allow_url_fopen 这个选项。自己的测试环境一般都是开启的,但偏偏国内很多人用的Dreamhost空间默认关闭这个函数,只好改用 fsockopen() 这个函数来实现,当然,这个函数功能比file_get_contents()强大多了,fsockopen() 可以自己构造Header这些,就仿佛是一个真正的访客在浏览一样,而file_get_contents()就比较简单了。关于fsockopen()我用了IT柏拉图写的 fsockopen HTTP下载类,比自己写一大段代码简单多了,当然,代码功能虽然强大,但东西也就多了,里面也有很多我根本用不到的东西,主要的文件17KB估计有10KB都是这个类的。估计下一次更新时写个更简单的fsockopen 类,够用就好。

3.从文本中提取RSS地址。这一步的关键在于能否写出一个好的正则匹配函数,我自己自然是写不好,搞了半天也搞不定,后来上网找了一个,分析一下,基本上都OK了。

有了这些还要组装起来,那可就真麻烦了,如果有100个友情链接,如何一次性提取100个网页?刚开始的时候,我还真以为一个循环就好了,但看着程序已经运行了一个小时超时后,才算出6个RSS地址,我否决了这个方案,一次不能提取太多,干脆一次就提取一个,提取成功后放到数据库里,向浏览器输出页面,浏览器再自动转跳下一个操作中。这样做就避免了服务器超时的麻烦,当然,这样做实际上是一直在看同一个页面,看起来很单调,下一版估计采用AJAX方式。在全部RSS地址提取完成后,在根目录生成一个opml.xml文件就算完成了 :)

新插件Get_OPML出炉啦!

星期二, 七月 1st, 2008

先说一下这个插件的作用,不知道你是否使用Google Reader这些RSS阅读器?如果你有用,并且有一个自己的博客,又想一次性添加您所有友情链接的RSS,强力推荐用Get_OPML这个插件。

这个插件能自动查找出您的友情链接中的RSS地址,并生成一个OPML的XML文件,您可以将这个文件导入支持OPML的阅读器中,如Google Reader鲜果抓虾等。怎么样?是不是很方便?先看看我的OPML文件: http://photozero.net/opml.xml

只需几步轻轻松松在Reader上访问你的好友。简单又实用,快点试试吧!使用中遇到什么问题请在此回复 :)

详情访问: http://photozero.net/get_opml/ .

试试在线RSS阅读器

星期天, 六月 29th, 2008

有博客的朋友肯定需要经常访问自己的友情链接吧?(如果你添加了友情链接而几乎没有往来,那纯粹是为了增加你的Google PR了?)如果每次都在浏览器中打开每一个链接,那岂不是累死了?当然,这些活要RSS在线阅读器来做的 :)

这里介绍一下几个好用的主流RSS在线订阅器。

1.Google Reader

Google推出的Reader,质量也相当有保证,比较稳定,风格是典型的Google风格,如果长期用Gmail,那么Google Reader是不二选择。但有些细节Google还可以做得更好,比如其他的阅读器都支持鼠标右键操作了。比较有特色的就是本来只显示10篇,但下拉条拉到底部了,你不需要去按什么“下一页”,继续往下拉,呵呵,它就会自动补充先前的文章,是不是很Cool?我想这个idea能不能应用更广的范围呢?比如我们的博客也这么做 :)

2.Zhuaxia抓虾

抓虾是我第一个用的RSS阅读器,一开始注册的时候输入你的博客,它就会帮你自动添加你所有友情链接的RSS订阅,这个功能真是很贴心,但某一次我尝试着把那些订阅全部删除以后却再也找不回来哪里能重来一次,这也直接导致了我找别的Reader看看有没有相同的功能。抓虾的主题相对美观一些,相比这几个Reader是最时尚的一个。

3.Xianguo鲜果

鲜果的风格更倾向于Google。在所有的Reader里,鲜果的功能算是比较强大了,它还有强大的统计功能、自定义快捷键等实用功能,它甚至允许你一键搬家到Google Reader,Bloglines,从这点来说,它是当之无愧的Web2.0。美中不足的是我暂时未找到它怎么更换皮肤。

4.Yodao Reader有道

有道是网易于去年推出的一个独立搜索引擎,相当于搜狐推出的搜狗,QQ推出的SOSO,现在的门户网站都爱搞一个独立的搜索引擎,但我认为这些鸡肋,几乎没有有所作为的。谈到这个Yodao Reader,我是在Feedsky的后台统计里看到有人用这个,我也上有道去试了一下,需要用163的账号登陆,126的都不行,不知道网易搞什么鬼,搞得那么麻烦。一个字,烂,两个字,很烂。。。
我在里面输入了自己的Feed地址:  http://feed.photozero.net/  半天没反应,最后弹出个提示说“没有在 feed.photozero.net 找到频道” ,昏倒!我就按他们的示例输入 i.yodao.com ,居然也是同样的反应,不知道是不是我用FF浏览器的缘由。看来Yodao Reader还只是个半成品。
P.S 这里说出来不是让你去试试了,是告诉你一个反面教材 :)

最后推荐一个RSS桌面阅读软件:周伯通 ,功能那绝对是无敌,但我受不了它第一次开启时扫描上百个频道。。它也有在线版阅读器,但界面不敢恭维,还有广告。

我浏览好友的博客时都一般在阅读器里进行,如果看到感兴趣的话题,我就会打开页面参与讨论、回复,如果不感兴趣那就跳过了 :)