终极同步大法

提醒:本文最后更新于 4018 天前,文中所描述的信息可能已发生改变,请谨慎使用。

随着微博的热门,已经有很多的微博程序纷纷出现了,而我们该如何挑选这些微博程序呢?首先我们要考虑的是选择单用户还是多用户的。但是如果像我这种注重功能的人,可能第一个想到的是它的同步功能如何?今天就介绍一种方法,为你的PageCookery的同步功能做拓展。

这里主要是利用了月光博客制作的GAE同步程序制作的一个针对PageCookery的简易教程。总所周知,Twitter现如今是微博界的老大,虽然被G.F.W了,但是仍然不能阻挡它的光芒!我们可以利用Twitter这个跳板,将其他地方的消息同步到Twitter中,同时也可以利用Twitter的多方式发布消息将自己的消息发布到Twitter中,然后将Twitter的消息同步到别的地方去!而月光的这个GAE程序就能够实现将Twitter的信息分发到各大微博网站去,包括新浪微博/嘀咕/网易微博/9911/51follow等等微博门户。而PageCookery微博程序又提供了对嘀咕的双向同步,而且也提供了RSS导入这么一个极佳的功能。

有人可能会说了,为什么我不直接用Twitter的RSS导入到PageCookery来呢?这是因为直接导入RSS的话,会有很多的RSS垃圾产生,比如你@别人的消息,以及RT别人的消息也都会同步过来,这个还算是小事,重要的是Twitter的RSS格式包括了用户名,所以每次导入Twitter的消息时都会带上"username:“这样的前缀,让人看起来甚是不爽,所以我们要对RSS进行过滤!而月光博客的GAE同步程序也正是做到了这一点。在此,要感谢月光博客为我们带来了这么好的一个工具。而且,利用GAE的高效工作性,我们基本能够实时的同步我们的消息到PageCookery中(我说的是几乎)……

好了,优点讲完了就改说怎么捣鼓了,首先呢,你要有申请一个GAE,如果有,则可跳过此不,如果没有,请参照如何申请GAE

申请好GAE并成功建立一个项目之后,我们要做的就是将月光博客的GAE程序给下载下来,下载方法,使用TortoiseSVN检出这个SVN地址,然后,编辑 app.yaml,修改为自己的appspot应用名,接着,修改twitter.py文件的最后一行,将自己的Twitter用户名填入,修改从 ret = send_sina_msgs(“username”,“password”,text) 语句开始的 username 和 password ,将相应微博客的用户名和密码分别填入,不需要同步的服务请使用#号注释掉,cron.yaml文件里是计划任务设置。至于如何使用TortoiseSVN下载,请参考:教你如何用SVN下载源码

千万不要忘记,记得修改最后一样你要同步的Twitter帐号!编辑保存后,我们就可以把程序上传到GAE主机上去了,至于如何上传么,请参考:如何上传文件到GAE image

好了,前半部分工作就做好了,下面我们就要做另外一部分工作了,现在假设你将Twitter上的信息同步到了嘀咕,由于PageCookery的嘀咕同步有个限制,就是嘀咕没有认证的API(也就是嘀咕页面消息显示是来自API)的消息PageCookery是不会同步过来的,所以我们只能通过RSS导入的法子,获取嘀咕微博的RSS地址,然后导入过来就可以了。(不能使用RSS导入功能的童鞋表示灰常抱歉了。)有人说了,如果我填写的是新浪微博的帐号怎么办?恩,我们知道新浪微博还没有开放RSS功能,不过这个也不要紧,https://imnerd.org/sinarss.php+“你的ID号"就是你的RSS地址了,这里要再次感谢月光博客提供的程序,有需要的也可以去他博客下载哦~~

其实个人认为吧,我们应该能从月光的GAE程序中直接获取到RSS地址的,那么就可以直接导入进PageCookery了,而不用使用其他微博做跳板了,只是python实在不是很了解,就没心思看他的代码了,希望有心人能够发现啊,呵呵~~最后就讲讲这个同步的时间问题,从Twitter同步到嘀咕等微博网站的时间是可以设置的,最短可以是1分钟(修改地方在cron.yaml文件最后一行的every * minutes,将*换成同步间隔时间即可),基本上可以做到实时同步,然后是嘀咕等RSS同步到PageCookery,经过我的初步观察,最迟15min~20min应该会同步过来的,如果没有同步过来的话我就告诉你一句:反正迟早的事,何必这么焦急呢,呵呵!

最后要提醒大家一句,请注意不要开启对某个微博的双向同步,一面发生消息同步死循环的状况……到时候估计删消息会删的你手软的!哈哈!

Avatar
怡红公子 擅长前端和 Node.js 服务端方向。热爱开源时常在 Github 上活跃,也是博客爱好者,喜欢将所学内容总结成文章分享给他人。

32 评论

LD Firefox 5.0 Linux i686
2011+00-30T08:49:08.000Z 回复
- -|||我想知道生成的rss地址是什么
梵婗 Fanny Lawren Chrome 5.0.375.55 Windows XP
2010-06-10T04:47:47.000Z 回复
不喜歡同步,假溝通似的。
怡红公子 Chrome 6.0.401.1 Windows 7
2010-06-27T04:50:12.000Z 回复
:9 你说的也在理,但是我几个微博上都有认识的孩子,几个微博我也会经常登录,这个不算假沟通吧,呵呵
crusher Opera 10.53 Windows 7
2010-05-08T09:23:34.000Z 回复
很不错嘛。月光博客到处都有名啊
怡红公子 Chrome 6.0.401.1 Windows 7
2010-06-27T04:50:45.000Z 回复
那是,月光一出,气镇山河,哈哈!
小小 Firefox 3.5.7 Windows XP
2010-04-12T08:56:30.000Z 回复
又是一篇强大的技术贴
饭团 Chrome 5.0.371.0 Linux i686
2010-04-11T12:21:03.000Z 回复
不需要这样麻烦了。 用Yahoo Pipe把 twitter的RSS处理一下 把RT和@的去掉 就行了。 然后再RSS导入 我的就是这样子做的。
怡红公子 Firefox 3.6.3 Windows 7
2010-04-11T13:07:28.000Z 回复
我看了下你的,貌似仍旧链接有用户名啊……不知道是不能去掉还是故意而为之?
饭团 Chrome 5.0.371.0 Windows 7
2010-04-11T13:12:09.000Z 回复
哦 你说那个啊 那个也能去 Yahoo Pipes的潜能是无限的。。 没注意到这个。。
怡红公子 Firefox 3.6.3 Windows 7
2010-04-11T13:13:26.000Z 回复
:10 恩,果然是个好东西~~有时间研究一下……省了跳板是很不错的东西
饭团 Chrome 5.0.371.0 Windows 7
2010-04-11T13:17:57.000Z 回复
貌似还支持正则表达式呢。。
怡红公子 Firefox 3.6.3 Windows 7
2010-04-11T13:26:23.000Z 回复
精确的挑选需要的RSS内容,应该就是用正则做的吧…… 其实两种方法各有好处~~
饭团 Chrome 5.0.371.0 Windows 7
2010-04-11T13:53:25.000Z 回复
好了 我基本弄好了 把用户名去掉。。
怡红公子 Firefox 3.6.3 Windows 7
2010-04-11T14:12:32.000Z 回复
:9 看了下两者的时间,貌似同步时间有点长啊
饭团 Chrome 5.0.371.0 Windows 7
2010-04-11T14:22:51.000Z 回复
测试过了 成功了 :10 :10
饭团 Chrome 5.0.371.0 Windows 7
2010-04-11T14:28:35.000Z 回复
那个是 因为重新弄 pipes了 所以他自动重新导入了一遍 还有 慢是因为PM的 RSS获取速度 到Yahoo Pipes那是即时的
怡红公子 Firefox 3.6.3 Windows 7
2010-04-11T14:31:39.000Z 回复
:9 恩……
饭团 Chrome 5.0.371.0 Windows 7
2010-04-11T14:52:16.000Z 回复
我写过方法了 在这里: http://www.fanhe.org/2010/04/send-tweets-to-pagecookery/
怡红公子 Firefox 3.6.3 Windows 7
2010-04-11T14:56:27.000Z 回复
建议发到讨论组去,呵呵~~
饭团 Chrome 5.0.371.0 Windows 7
2010-04-11T03:12:52.000Z 回复
好了 发过了。
减肥食谱 Firefox 3.6 Windows XP
2010-04-10T00:35:08.000Z 回复
呵呵,我还是好好打理自已的博客吧,不凑微博的热闹了,各大门户都有,都不知道玩那个 :3 :3
Jclyn Chrome 4.1.249.1045 Windows Vista
2010-04-09T13:22:30.000Z 回复
:9 那个图挂掉了 看你写了这么多篇关于pagecookery 我好像有了那么一点点开窍了
javik IE 8.0 Windows 7
2010-04-09T13:14:09.000Z 回复
看不懂……
Firefox 3.6.3 Windows 7
2010-04-09T09:19:09.000Z 回复
呃...还是...我还是路过路过了...
ikeeptrying Chrome 4.1.249.1045 Windows 7
2010-04-09T08:36:00.000Z 回复
不凑这个热闹~~~
leecay IE 8.0 Windows XP
2010-04-09T01:52:38.000Z 回复
额 Twitter老被墙主要是。。。话说腾讯的微薄都出来了 还是用腾讯吧 毕竟客户多
怡红公子 Firefox 3.6.3 Windows 7
2010-04-09T02:02:47.000Z 回复
:2 话是这样说没错,可是我们有很多方法可以不爬墙就可以发消息啊?网页就有无数的Dabr,推特中文圈等程序,FF也有插件,手机也有软件,IM也有机器人等等等等,推特还有周边应用也非常有趣,因为这种多途径多样式的发送,我是比较看重Twitter的~~
lovee Safari 4.0.5 Mac OS 10.6.3
2010-04-08T16:09:02.000Z 回复
Twitter最高 :7
志言 Chrome 4.1.249.1045 Windows XP
2010-04-08T14:46:55.000Z 回复
难道我是沙发?
志言 Chrome 4.1.249.1045 Windows XP
2010-04-08T14:47:32.000Z 回复
难怪今天在新浪微博看到你那么多身影,原来用了同步
怡红公子 Firefox 3.6.3 Windows 7
2010-04-08T14:50:52.000Z 回复
:9 志言同学好犀利啊,这么快就占领了沙发……新浪以前我也是用同步过去的……==自从那次月光程序出问题之后新浪封了IP就还没上过呢,这两天新粮的消息是从http://t.imnerd.org这里同步过去的~~ :2
志言 Chrome 5.0.342.9 Windows XP
2010-04-10T02:41:38.000Z 回复
公子也t了,大家都在t,twitter该收费了