博客同步工具BlogSync

BlogSync是一个在博客之间进行同步复制的工具,它会自动比较两个博客之间的差异,找出不同的文章并列出来,供使用者选择,然后执行复制操作。经BlogSync复制的帖子可以保留原本的排版样式、发帖时间以及标签。你可以用BlogSync方便地维护镜像站点,也可以把它作为一个搬家工具。

目前BlogSync支持Blogger(GDATA API)、MSN Live Spaces、WordPress、Drupal等BSP或网站平台软件。详细的支持名单请看这里

BlogSync通过调用BSP提供的API服务来对博客进行写入和读取的操作,目前BlogSync支持的API有Google的GDATA API和Blogger/MetaWeblog API,GDATA API提供对Blogger的操作,而MetaWeblog API则在多种开源博客程序中拥有广泛的支持,常见的有WordPress和Drupal。
除了以上支持API的博客服务之外,BlogSync也可以从普通的RSS或Atom格式的Feed中读取帖子资料,这样即使你的BSP没有提供API支持,也可以在BlogSync中使用,但是Feed是只能读取不能写入的,所以BlogSync只能做到从Feed中读取内容,然后同步或复制到其他支持API的博客中。

功能

复制贴子
从一个博客复制贴子到另一个博客,可以保留原帖子的发帖时间、格式和标签。
同步
BlogSync自动比较两个博客之间的差异,从中找出需要复制的帖子。BlogSync以帖子标题作为识别帖子的字段,如果两个博客都拥有完全一样标题的帖子,那么BlogSync就不会把它们列入需要复制的名单。
批量删除
BlogSync可以帮助你从一个博客中一次性删除大量的帖子。(此操作无法恢复,慎用)

什么是源

运行BlogSync,首先进入的是“源管理器”,什么是源呢?
BlogSync使用“源”这个词来表示一个博客或者Feed,每个源有自己的帖子数,状态和类型。

帐户安全

BlogSync不在服务器上保存任何用户信息,包括你的账号密码/帖子内容都不会有任何记录在服务器上。为方便起见,BlogSync提供保存“源”列表在本地电脑上的选项,保存后用户下次在同一台电脑上使用BlogSync时可以不必在进行加入源的操作。用户可以自行选择是否保存。为避免他人操作您的博客,请勿在公共电脑上使用此选项。

系统需求

BlogSync需要flash player 9,并且浏览器需要开启javascript支持,才能正常工作。
(早期版本的BlogSync需要Firefox并需要做特别设置,现在已经不需要了。IE和Firefox用户都可以正常使用BlogSync并且不用做任何特殊设置。)

运行BlogSync v1.1

支持的博客

本页介绍BlogSync支持的博客以及他们的设置方法。

BlogSync支持的博客

BlogSync通过BSP开放的API对博客进行操作,目前BlogSync支持两种API:GDATA API和metaWeblog API。
开放了这些api支持的博客可以使用BlogSync的全部功能,包括读取、写入和删除。对于不支持api的博客,BlogSync提供从普通的rss或atom feed中读取文章的功能,读取之后可以用来写入其他支持api的博客。
以下是已知的具备上述API支持的BSP清单

BSP/网站平台 API类型 BlogSync支持情况 设置方法
Blogger GDATA API 完美支持 说明
MSN Live spaces metaWeblog API 完美支持(由于ms对API的限制,只能读取20篇) 说明
使用WordPress建立的博客 metaWeblog API 完美支持 说明
使用Drupal系统建立的网站 metaWeblog API 完美支持 说明
CSDN Blog metaWeblog API 完美支持 说明
博客蓝 metaWeblog API 功能正常但时间有误

对于不提供API支持的博客,BlogSync可以通过读取它的feed获取博客中的资料,然后写入其他支持api的博客中。

Blogger

加入Blogger下的博客的步骤如下

  1. 进入添加博客的界面
  2. 选择GDATA API
  3. 选择Blogger
  4. 按下执行授权的按钮,此时BlogSync会带你进入Google Account网站。
  5. 如果你没有登录Google帐号,Google Accounts会要求你登入。请登入你需要添加的博客所属的帐号
  6. 如果你已经登录Google帐号,界面上会有一段文字及两个按钮,询问你是否同意授权BlogSync访问你的博客。请选择"授予访问权"。
  7. 如果你已经登录Google帐号,但这个帐号不是你希望添加的博客所属的帐号,这时请选择登出,然后重新执行上面的步骤。下次进入Google Account後,登入你的博客所属的帐号。
  8. 授予访问权之后,浏览器会回到BlogSync,BlogSync会自动开始向Google查询你的帐号下的博客。完成之后BlogSync会列出你帐号下的所有博客,请从中选择你需要的,按下加入按钮,把他们添加到BlogSync

CSDN Blog

  1. 进入添加博客界面
  2. 选择metaWeblog API
  3. 输入API地址: http://blog.csdn.net/[username]/services/MetaBlogApi.aspx
    其中[username]是你登录CSDN的用户名
  4. 输入你登录CSDN Blog的用户名和密码
  5. 按下加入

Drupal

加入Drupal网站到BlogSync,首先你需要准备以下信息

API 地址
Drupal的Blog API地址是Drupal根目录下的xmlrpc.php。
如果你的网站是 http://yoursite.com/ ,那么你的API地址应该是 http://yoursite.com/xmlrpc.php
如果你的网站是 http://yoursite.com/drupal/ ,那么API地址应该是 http://yoursite.com/drupal/xmlrpc.php
用户名
用户名就是你登录你的Drupal网站的用户名
密码
密码也是你登录Drupal网站的密码

Drupal的核心组件中包括了Blog API模块,但是默认状态下的关闭的。如果你的Drupal网站没有开启Blog API,你需要在模块设置中启用Blog API,并且在网站设置页面设置可以通过Blog API发布的文章类型。
Drupal除了Blog之外还有很多其他的文章类型,例如Page、Story等等,如果你希望通过BlogSync发布Story类型的文章,你需要在Blog API设置中开启Story类型的支持。

在BlogSync中加入Drupal的步骤如下:

  1. 进入添加博客界面
  2. 选择metaWeblog api
  3. 输入API地址、用户名和密码,按下加入按钮
  4. 接下来BlogSync会使用你提供的用户名和密码访问API地址,如果一切正常,检查完成后BlogSync会列出可以通过API操作的文章类型。
  5. 从列出的文章类型中选择你需要通过BlogSync操作的类型,按下加入。

MSN Live Spaces

MSN Live Spaces默认设置下并不支持API功能,要把Live Spaces的博客加入BlogSync,首先你需要做以下设置:
进入后台管理,开启email发布功能。
设置一个安全码,并记录下来。

加入Live Spaces的步骤:

  1. 进入添加博客界面
  2. 选择metaWeblog API
  3. 输入API地址:https://storage.msn.com/storageservice/MetaWeblog.rpc
  4. 输入用户名,请注意用户名并不是你的msn passport,而是你的博客名,如果你的博客地址是myspace.spaces.live.com,那么你的博客名就是myspace。
  5. 输入密码,密码就是你在email发布功能中设置的安全码
  6. 按下加入
  7. 完成

WordPress

加入WordPress网站到BlogSync,首先你需要准备以下信息

API 地址
WordPress的API地址是WordPress根目录下的xmlrpc.php。
如果你的网站是 http://yoursite.com/ ,那么你的API地址应该是 http://yoursite.com/xmlrpc.php
如果你的网站是 http://yoursite.com/wordpress/ ,那么API地址应该是 http://yoursite.com/wordpress/xmlrpc.php
用户名
用户名就是你登录你的WordPress博客的用户名
密码
密码也是你登录WordPress博客的密码

在BlogSync中加入WordPress的步骤如下:

  1. 进入添加博客界面
  2. 选择metaWeblog api
  3. 输入API地址、用户名和密码,按下加入按钮
  4. 接下来BlogSync会使用你提供的用户名和密码访问API地址,如果一切正常,你的WordPress博客会被加入BlogSync了

帮助说明

使用BlogSync同步博客的步骤:

  1. 如果需要同步的博客已经出现在首页列表中,直接前进至步骤B,否则进入下面的步骤a添加博客。源管理器界面操作说明
    1. 按下加入按钮,进入添加源界面
    2. 选择适当的类型,加入需要同步的博客。博客类型说明
    3. 重复a-b直到所有要进行同步的博客都加入到列表中
  2. 选中两个需要进行同步的博客,按下"执行比较操作"按钮,进入同步内容的列表
  3. 从列表中删除不需要进行复制的内容
  4. 完成后按下"执行同步"按钮进行同步操作
  5. 同步操作完成后回到源管理器,重复步骤B-D直到所有博客的同步完成

批量删除帖子的步骤:

  1. 如果需要做批量删除的博客已经出现在首页列表中,直接前进至步骤B,否则进入下面的步骤a添加博客。源管理器界面操作说明
    1. 按下加入按钮,进入添加源界面
    2. 选择适当的类型,加入需要同步的博客。博客类型说明
    3. 重复a-b直到所有需要的博客都加入到列表中
  2. 等需要做批量删除的博客状态变成ready,选中此博客,按下管理帖子按钮进入帖子列表
  3. 选中所有需要删除的帖子,按下删除按钮
  4. 重复B-C直到所有删除操作完成

以下是各操作界面的详细说明

各界面操作说明

以下是各界面的详细操作说明

源管理器

源管理器列出所有加入BlogSync的Blog和Feed清单
源可以是一个Blog或者一个Feed

源的类型:

blogger
表示一个Blogger
xmlrpc
metaWeblog API的blog
feed
Feed类型,只读,不能写入

源的状态:

checking
检查中
reading
读取帖子
ready
准备完毕,可以进行其他操作

按钮操作说明

保存设置
设置是否在本地电脑保存列表。如果您在公共电脑上使用BlogSync,为安全起见,请不要勾选这项设置。
添加
进入添加源界面
删除
删除选中的源。只有在列表中选中一个以上项目时,按钮才有效。
重新检查
重新检查源,获取帖子数量。
管理帖子
进入管理帖子界面,列出选中的Blog中的所有帖子。只有在列表中选中Blog类型的源时,按钮才有效。
执行比较操作
比较两个源的帖子,找出差异并列出来。只有在列表中选中2个源并且其中至少有一个是blogger或xmlrpc类型时,按钮才有效。

加入新的博客或feed到BlogSync

加入Blogger的博客
选择GDATA API,按下按钮,会链接到Google Accounts网站,里面会询问是否给miian.com授权操作你的博客,选择授权,然后会自动回到BlogSync。BlogSync会显示你的Google帐号下的所有博客清单,在里面选择需要加入BlogSync进行操作的博客,按加入即可。

加入metaWeblog API的博客
选择metaWeblog API,输入你的API地址和用户名、密码。
对于WordPress和Drupal,API地址是你的博客首页目录下的xmlrpc.php
如果你的博客主页是http://myblog.com/,那么API地址应该是http://myblog.com/xmlrpc.php
如果你的博客主页是http://mysite.com/wordpress/,那么API地址应该是
http://mysite.com/wordpress/xmlrpc.php
用户名和密码就是你登录博客的用户名和密码
填好之后选择添加,同样BlogSync会显示你帐号下的所有博客清单,请从中选择需要的加入BlogSync。

加入Feed
填入feed地址,按下加入即可。

比较差异

wait

管理帖子

wait

常见问题

常见问题:

使用Feed如何获取更多帖子?

可以试试利用google reader的feed获取帖子

把你的feed地址改成

http://www.google.com/reader/atom/feed/[你的完整feed地址,包括"http://"]?n=[你希望获取的文章数量]

举例:
http://www.google.com/reader/atom/feed/http://mianwos.spaces.live.com/feed.rss?n=1000

然后用这个新的feed地址加入BlogSync中,再进行同步。
这个方法能够取到的文章数量,取决于google服务器对你的feed抓取的数量,如果有人用google reader订阅你的blog,那应该可以找到很多的帖子。

过往版本

以下是较早的版本:

BlogSync v0.9

0.9版已经过时,请使用最新的1.1版

1.1版不再需要浏览器做特殊设置。IE也可以使用,同时,能够支持更多的博客

以下是0.9版本的说明和内容:

BlogSync是一个在blogger帐号、rss/atom feed之间导入帖子的工具。

利用它,你可以维护一个镜像blog而不需要手工拷贝帖子,或者从备份的rss中恢复旧帖子到新blog,或者从其他其他BSP搬家到blogger,却能够保留所有的旧帖子,包括版式、发贴时间、标签都能够保留。。。。

它通过google授权操作你的blog,你不需要提供你的blog账号和密码,只需要在Google Accounts网站给BlogSync授权即可。如果你觉得需要,你也可以随时在Google Accounts取消授权。所以你完全不需要担心你的账号安全。



最近更新

  • v0.9 build 867
  • 可以在blogspot的替代网站正常运行,例如pkblogs。

    增加导出RSS功能,可以从blogger导出所有帖子到一个RSS文件,这个文件可以用来在WordPress中导入。

  • v0.9 build 854
  • 增加阻止BlogSync在拷贝feed时加上原文连接的接口。简单的说,只要你能证明Feed由你控制,那么BlogSync可以不在复制时添加原文连接。详细说明


系统需求:



BlogSync几乎完全是一个客户端工具,它不在任何服务器保存任何用户信息,所有的数据传递都通过flash和js来完成,遗憾的是这种方式不是所有浏览器都支持。所以,要使用BlogSync,你需要以下的东西:

  • Firefox浏览器。

    IE的任何版本都不支持,IE顽固分子就不用试了。
  • 在Firefox的about:config页面,设置signed.applets.codebase_principal_support为true。详细
  • Flashplayer 9
  • 使用中,浏览器会提示你是否授权脚本"从任何站点或位置读取私有资料",你必须选择“是”,并且钩上“记住我的选择”,这样才能让BlogSync正常工作。详细







感谢Blogger提供一流的博客服务和完善的api,使BlogSync成为可能。

另外还要感谢以下参与内部测试的blogger们:

Yong Liu,
Aaron,
heart5,
Calon,
conge,
Alex,
養樂多,
,
血瞳,
SunQii,
xujie