受朋友之托部署了一套wordpress,经过美工的一番努力几乎和之前的blogbus博客一模一样啊,朋友十分高兴,我也很高兴。系统是弄好了,可是之前的数据得想办法迁移过去。
有几种方案:1.手工迁移 2.wordpress提供的第三方插件迁移 3.写程序来迁移
手工迁移由于数据量也算多吧,200多篇文章还有几百幅图片,再说也没什么技术含量,就放弃了这个方案。
wordpress提供的第三方插件,初步使用了一下还挺麻烦的,没成功,也没有时间来继续的玩这个工具了。
周末睡个大懒觉,考量了许久的写程序迁移方案就这么开始了。
大概思路是:1.抓取blogbus上的博客。2通过httpclient写入wordpress。
抓数据很好说,用jsoup来解析是很方便的,可是用httpclient写入wordpress的时候出现问题了,cookie出错。时间紧啊没时间研究wordpress的cookie了。继续上网找解决方案,找到了xml-rpc接口。wordpress是提供xmlrpc接口的,立即抄了段代码实验了一把,终于博客写入了wordpress,心中的石头总算落地了。
经过3个多小时的调试,搬家程序终于完成了,数据就这么哗哗的流入wordpress了。终于花了80%的时间完成程序的编写,然后用20%的时间都不到来完成数据的导入。
但是有2个问题需要继续的跟进,
1博客的时间都是新插入数据库的时间,无法换成发表时的时间。
2.blogbus上图片经过了防下载处理,无法批量下载然后替换。
经测试blogbus没有拦截非blogbus域名的图片下载。
经过这次迁移,对xmlrpc机制有所了解,之前自己的网站也想过外部的活动发布,没想好方案,这次一举2得。
如果可能的话我会开发一个开源的java版本的blog的。
如果问:为什么要重复造轮子?
答曰:造自己的轮子实现自己的梦想!
立贴为证,希望有日能实现今日之p话!
ps
试用wordpress的第三方搬家插件时,发现做一个博客搬家的功能也是蛮好的,开发自己的blog的梦想如果不能实现,能否把这几天博客搬家的程序整合整合弄个web的服务呢?免费还是收费先不考虑了,有人使用才是好东西才有成就感!