太多微博客,懒得每个都更新,但是每个地方都有不同的朋友
想是在一个地方发消息,更新所有的微博客,所以就不得不想这个同步的办法了
目前我是用这样的流程
twitter (主号) -> ping.fm -> custom.url -> 火兔(嘀咕) -> 新浪微博
同时这个ping.fm 也一块更新 我一个备份我发过twitter的另外一个账号 以及facebook
主号往ping.fm发消息的时候过滤了RT 和 @ , 这样我的主号跟人聊天打屁 扯蛋 八卦的内容就不会传播出去了
我养了3个twitter的账号 目的有几个
1.主号 : 发一些有价值的,有营养的 , 顺便跟人打屁 RT 扯蛋 聊天 吹牛 八卦的
2.机器人号 : 用twitterfeed 抓取我博客的comment rss 然后加上前缀 @ 主号 的方式 发放消息, 这样如果有人在我博客评论,我在我的主号上查看 @me 就可以知道有评论了, 我加了我的wordpress的评论rss以及live space的
3.备份消息号 : 备份主号发的消息,还有一些,比如 我睡觉了,我起床了,我吃饭了 这样无聊的信息,我想这样记录下看看我天天都在干啥的时候,又对别人没任何意义的时候,就把内容保存到这个号就可以了,今后多年以后再看过来,也是蛮有意思的一件事情
twitter -> ping.fm 主要是用python脚本来实现
有个ping.fm的python库,安装之后就很简单了
具体代码可以参看
#!/usr/bin/python
from xml.dom.minidom import parseString
import urllib
import urllib2
import sys
from pyngfm import PyngFMdef post_to_pingfm(msg):
pfm = PyngFM()pfm.setApiKey(‘xxxxxxxxxxxxxxxxx’)
pfm.setUserAppKey(‘xxxxxxxxxxxxxxxxxxxxxxx’)pfm.user_post(‘default’,'%s’%msg)
def main():
f = open(‘last.txt’,'r’)
maxid = int(f.read())
f.close()
if maxid < 1166717326:
print ‘error’
sys.exit(-1)
params = urllib.urlencode({’since_id’:maxid})
f = urllib.urlopen("http://twitter.com/statuses/user_timeline/jimey.xml?%s" % params)
xmltext = f.read()
dom = parseString(xmltext)
statuses = dom.childNodes[0]
messages = []
s = 0
for node in statuses.childNodes:
if node.nodeName == ’status’:
status = node
for snode in status.childNodes:
if snode.nodeName == ‘id’:
n = int(snode.childNodes[0].nodeValue)
if n > maxid:
maxid = n
elif snode.nodeName == ‘text’ and snode.childNodes[0].nodeValue[0:2] != ‘RT’ and snode.childNodes[0].nodeValue[0] != ‘@’:
messages.append(snode.childNodes[0].nodeValue.encode(‘utf-8′))
while len(messages) > 0:
post_to_pingfm(messages.pop())
s = s + 1
f = open(‘last.txt’,'w’)
f.write(str(maxid))
f.close()
if __name__ == "__main__":
main()
ping.fm 到自定义网页
可以查看这个网页 http://www.williamlong.info/archives/1961.html
修改那个microblog.php 添加你的火兔帐号密码,然后随便丢到一个支持php的网站去就好了
在ping.fm cunstom url添加这个microblog.php 即可同步更新
然后在火兔那边添加 新浪微波即可
目前唯一比较麻烦的是豆瓣的我说
我想把豆瓣的我说 广播也一并给同步了
搞了一天的oauth 还不是很得法…
python俺那个认证header实在是不知道咋弄了..
php版本的好像得自己的php服务器了因为还要装Zend Gdata,网上的php网站好像都不支持这玩意..






