这是一篇旧文。
玩微博 5 年了,至今发布微博 66747 条,前几天微博突然挂了,而且最近微博管控越来越严格了,为了安全把我的 5 年微博备份下,使用的工具是一个 chrome 插件
具体使用教程见这条微博 http://weibo.com/1869328492/F9cR9okDK?type=comment#_rnd1498388083394 扩展见微盘 http://vdisk.weibo.com/s/x5GuwUhlGH/1498206615 由于 chrome 扩展安装需要翻(fan)墙(qiang),所以作者提供的是 crx 文件,下载后拖到扩展里就可以安装 感谢作者@Easy
一、下载后,拖入chrome扩展页安装。
二、点击工具图标进入操作页面,微信扫码登录。这时注意一下,先打开weibo.com登录你的微博。这里登录后,下面一步weibo.cn时会自动登录,因为weibo.cn的登录很麻烦,所以这里要先登录。
三、会看到【点我测试我的微博网络】,点它,打开weibo.cn。返回工具页面,点【登录后点此继续】。这里要注意一下,在打开的weibo.cn页面,下拉到最底下,看到条数,点开,设置20。点预览,后点保存设置。返回工具页面,再点【全量备份】。微博越多速度越慢。如果你发现数字不动了,点一下图标,即可开新页,会看到可以继续,
四、完成后,会自动进入预览效果页面。会有一个下载按钮。点下载即可。
五、会得到一个压缩包,解压后,就是N个html文件,这就是把你的微博备份了。
下载后的文件打开若有乱码,则更新浏览器。
从早上 9 点就开始备份了,然后我的微博数实在太大了, 共 66741 条 6675 页微博需要备份,预计需要 166 分钟,作者都惊呆了,鬼知道我都发了些什么微博。
最后还是微信上@easy 直接帮我导出了,感谢。
作者还给懂PHP的同学提供两个微贝的增强脚本,解压后放到那堆html 同级目录,运行 php json.php 会把feed数据提取到json目录,运行 php img.php 可以把页面中的图片备份到本地并替换链接。http://vdisk.weibo.com/s/x5GuwUhQQ_/14983226271
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219$ cat json.php
<?php
foreach( glob( '*.html' ) as $k => $htmlfile )
{
echo "File $htmlfile ...";
$reg = '/this\.feeds\s+=\s+(.+?)\}\s+,\s+1000/is';
$content = file_get_contents( $htmlfile );
if( preg_match( $reg , $content , $out ) )
{
if($data = json_decode( trim($out[1]) , 1 ))
{
@mkdir( 'json/', 0777 , true );
$jsonfile = 'json/' . basename( $htmlfile ) . '.json';
file_put_contents( $jsonfile , trim($out[1]) );
echo "done.\r\n";
}
else
echo "error.\r\n";
}
}
echo "ALL Done.";
$ cat img.php
<?php
foreach( glob( '*.html' ) as $k => $htmlfile )
{
echo "File: $htmlfile \r\n";
$reg = '/this\.feeds\s+=\s+(.+?)\}\s+,\s+1000/is';
$content = file_get_contents( $htmlfile );
if( preg_match( $reg , $content , $out ) )
{
if($data = json_decode( trim($out[1]) , 1 ))
{
foreach ( $data as $kkk => $item )
{
$keys = array();
$keys[] = 'pic_url';
//$keys[] = 'oripic_url';
$keys[] = 'rt_pic_url';
//$keys[] = 'rt_oripic_url';
foreach( $keys as $key )
{
if( strlen( $item[$key] ) > 0 && (substr
( $item[$key] , 0 , 7 ) == 'http://' || substr( $item[$key] , 0 , 8 ) == 'https:
//' ) )
{
$info = explode( '.' , basename(
$item[$key] ));
$ext = end( $info );
if( !in_array( $ext , array( 'p
ng' , 'jpg' , 'jpeg' , 'gif' ) ) )
{
$ext = 'jpg';
}
@mkdir( 'img/' . $k . '/' , 0777
, true );
$newfile = 'img/' . $k . '/' . $
item['cid'] . '.'.$key.'.' .$ext;
echo "Image: " . $item[$key] . "
\r\n" ;
if( copy( $item[$key] , $newfile
) )
{
$data[$kkk][$key] = $new
file;
// 处理原图
if( $key == 'rt_pic_url'
)
{
$new_ofile = 'im
g/' . $k . '/' . $item['cid'] . '.'.$key.'.rtori.' .$ext;
$nurl = str_repl
ace( '/wap180/' , '/large/', $item[$key] );
echo "Image: " .
$nurl . "\r\n" ;
if( copy( $nurl
, $new_ofile ) )
$data[$k
kk]['rt_oripic_url'] = $new_ofile;
}
// 处理原图
if( $key == 'pic_url' )
{
$new_ofile = 'im
g/' . $k . '/' . $item['cid'] . '.'.$key.'.ori.' .$ext;
$nurl = str_repl
ace( '/wap180/' , '/large/', $item[$key] );
echo "Image: " .
$nurl . "\r\n" ;
if( copy( $nurl
, $new_ofile ) )
$data[$k
kk]['oripic_url'] = $new_ofile;
}
echo "...done\r\n";
}
else
{
echo "...error \r\n";
}
echo "@Page $k \r\n";
}
}
}
$content = str_replace( $out[1] , json_encode( $data ) ,
$content );
file_put_contents( $htmlfile , $content );
}
}
}
echo "All Done!";
最后导出目录下 92 MB,130 个 HTML 文件
最后推荐几个好用的 chrome 插件 https://chrome.google.com/webstore/category/extensions?hl=zh-CN
不过安装 chrome 扩展,你懂的,在墙外,所以需要用软件,比如最常用的 ss,教程见 http://www.iyingsuo.com/help.html
油猴脚本Violent monkey https://greasyfork.org/zh-CN 安装这个脚本后访问指定的网址就可以了。