中文网志年会准备的如火如荼,并提倡大家通过del.icio.us推荐自认为有特色的Blogger,这个方法很好,在我订阅的Rss中有很多Blogger我都想推荐,可惜一个一个添加太麻烦了,灵机一动就做了这么一个小工具。
只要使用Rss的人一般都会订阅自己认为价值高有特色的Blog,所以参考自己的opml文件进行推荐是最方便的,我这个小工具就是通过Bloglines的opml文件自动罗列出你订阅的所有Feed,然后点一下按钮就会自动添加Blog地址到del.icio.us下,并加注cnbloggercon这个标签
使用方法:
- 先复制下这个输入框内的所有代码
- 打开BlogLines首页(其他页面亦可,但是不要用那个feed阅读页面,因为这个页面是个框架页面,懒得再从代码上修改支持框架了)
- 把1中拷贝下来的代码粘贴到当前Blogline页面的地址栏中,拍个回车就耐心等着吧,如果弹出del.icio.us的登录框,输入del.icio.us的帐号和密码即可。
- 等页面Load完就能看见opml文件中所有的feed列表,有一个Add Blogger按钮,点击就能添加到del.icio.us中了,注意,这里使用的是iframe,所以点击后应该在地址栏能看见有Load的进度,等进度100%了在点击下一个,页面的右上角能看见那个iframe窗口,内容就是发送添加书签命令给del.icio.us后得到的反馈结果。
实现方法其实很简单,主要使用了XMLHttpRequest远程从http://www.bloglines.com/export这个url中读取到opml文件,并通过DOM对这个xml文档进行遍历,找出所有有效节点并罗列出来。往del.icio.us里添加书签我用iframe实现的,用AJAX当然最好,只是跨域问题实在没办法解决了,这个小工具用了Johnvey Hwang的客户端代理技术,即通过javascript:命令结合url实现欺骗性质的跨域操作,但这也只能跨一个域,向我这个即用Bloglines又用del.icio.us,实在没办法了,只能用iframe了。
当然,你必须是del.icio.us和bloglines的注册用户,最好都已经保存cookie在当前你操作的机器上,不然可能会出现问题。目前只支持BlogLines的feed,对于其他用户,比如toPim用户,只要用了规范的opml格式,都能实现的。浏览器我也测试了,IE和Firefox都没问题
源文件只有一个JS文件:http://www.duduwolf.com/test/opml2blogger.js