人人网日志导出(备份)工具 (2012-2-9更新)

之前的时候Kaisir有练手写过一个小的人人网的日志导出工具,也是一直开源放在那里的。不过近期有童鞋在我部落格留言说之前的那个失效了,而且他自己尝试修改却总是报错。好吧,Kaisir还是比较喜欢助人为乐的,拿出一些时间,又看了看曾经写的这个小东西,顺便再次分析下人人网的结构~~
最近人人网的结构可以说较我之前研究的时候做了很多修改,主要修改如下:
1)全站使用Ajax技术,很多地方都是进行了异步刷新。这样的好处是只刷新需要的地方,增强用户体验的同时减少了带宽的消耗。
2)请求页面的时候对来路(Referer)进行了判断,请求页面时,先通过请求ajaxproxy.htm这个文件来设置Referer,如果不包含这个Referer则转回首页。
3)大部分连接增加异步请求参数。这个很奇怪,我使用FireBug对数据包进行分析抓取的时候没有抓到这个参数,以至于我多次提交系统都给我返回了错误的页面,后来使用Wireshark抓包做协议分析才看到这个参数~~郁闷啊郁闷~~这里浪费了很多时间~~
既然知道了这些改变,那修改我的程序就简单多鸟~~不过这次还是重写了下HttpHelper这个类,上次写的那个冗余太多了,代码不漂亮~这下尽可能的封装,然后再使用函数的重构把它给分开了~~
大家普遍反映,20120209版出现不能备份的bug,请大家先下载之前的版本 :)
2012年2月9日更新:
1)提高日志备份的稳定性,出现错误可以自动跳过。
点此下载:RenRen20120209

源代码:RenRen_src
2011年4月7日更新:
这次变动的地方比较多,主要变动如下:
1)改变文章获取方式,由以前获取全部列表后再获取文章转变为获取一页列表保存一页文章。
2)增加断点续备功能,如果中途备份出错,下次备份开始时会接着上次进度继续,如果不想这样做,可以手动删除位于D:Kaisir下面的savepoint.dat
3)增加导入的文章导出功能,以前导入校内的日志备份出来全是空白。
4)修正“通过手机发布的日志”保存空白的情况。
下载地址:
http://code.google.com/p/renren-backup-tool/
2011年3月13日更新:
我把这个小项目在Google Code托管了,详情可见:
http://code.google.com/p/renren-backup-tool/
希望参与这个项目维护的可以联系我 :)
2011年3月12日更新:
增加随机间隔,模拟真实用户访问,防止保存过程中被人人网强制中断连接。
按照惯例,依然提供源代码,与编译好的程序。
人人网日志备份工具:点此下载
人人网日志备份工具(源代码):点此下载
2010年11月17日更新:
增加图片下载功能(感谢ALsite增加此功能)
好吧 这回依然提供源代码可直接运行的程序
PS:
1)页面默认保存在D盘Kaisir文件夹下。
2)如果文章显示为乱码,请手动指定文件编码为UTF-8