百度空间 | 百度首页 
 
查看文章
 
百度blog备份脚本baidublogbak.vbs
2008年08月14日 星期四 下午 05:17

'=========================================================================================================

'用法示例:
'cscript bak.vbs 百度用户名 第I页 至第n页 目录列表.htm 用户名 密码
'例如我的blgo示例:
'cscript baidublogbak.vbs myvbscript 0 3 url.htm myvbscript mima
'表示从第0页备份到第3页,blog的共有页数打开
http://hi.baidu.com/用户名/blog/index/0就可以看到了。url.htm存放的是目录列表
'注意的是百度是从0页计数的
'如果用户名和密码随便写也可以备份,但是无法备份私有文档
'推荐几页几页备份,最好建单独一个目录将bak.vbs放进去,会在当前目录生成mht文档。因为有的网络原因,有的无法成mht,请对照url.htm目录列表检查

'====================================================================================================
On Error Resume next
if (lcase(right(wscript.fullname,11))="wscript.exe") then
wscript.echo "Execute it under the cmd.exe Plz! Thx."
wscript.quit
end if

Const adSaveCreateNotExist = 1
Const adSaveCreateOverWrite = 2
Const adTypeBinary = 1
Const adTypeText = 2

Set args = WScript.Arguments

if args.Count = 0 then
WScript.Echo "Usage: CScript baidublogbak.vbs blogname i n url.htm username password"
WScript.Quit 1
end If

Set objMessage = CreateObject("CDO.Message")
Set ie=WScript.CreateObject("InternetExplorer.Application")
ie.visible=true
ie.navigate "http://passport.baidu.com/?login"

Do
Wscript.Sleep 200
Loop Until ie.ReadyState=4
ie.document.getElementById("username").value=args.Item(4)
ie.document.getElementById("password").value=args.Item(5)
tj=ie.document.getElementsBytagname("form")
tj.submit
WScript.Sleep 10000


Sub SaveToFile(Msg, Fn)
Dim Strm, Dsk
Set Strm = CreateObject("ADODB.Stream")
Strm.Type = adTypeText
Strm.Charset = "gb2312"
Strm.Open
Set Dsk = Msg.DataSource
Dsk.SaveToObject Strm, "_Stream"
Strm.SaveToFile Fn, adSaveCreateOverWrite
End Sub

For n=args.Item(1) To args.Item(2) Step 1

url="http://hi.baidu.com/"&args.Item(0)&"/blog/index/"&n
ie.Navigate url
ie.visible=false

While ie.Busy
      WScript.Sleep 100
     Wend

Do
Wscript.Sleep 200
Loop Until ie.ReadyState=4

wscript.echo "正保存第"&n&"页"
Wscript.Sleep 3000

For i=0 To ie.Document.links.length-1
   If InStrRev(ie.Document.links(i).href,"blog/item/",-1,1)<> 0 And InStrRev(ie.Document.links(i).innerText,"浏览",-1,1)= 0 And InStrRev(ie.Document.links(i).href,"#comment",-1,1)= 0 And InStrRev(ie.Document.links(i).href,"cmtid",-1,1)= 0then
   wscript.echo ie.Document.links(i).href &"||"&ie.Document.links(i).innerText
   CreateObject("Scripting.FileSystemObject").OpenTextFile(args.Item(3),8,True,0).WriteLine(ie.Document.links(i).href &"||"&ie.Document.links(i).innerText)
   objMessage.CreateMHTMLBody ie.Document.links(i).href
   SaveToFile objMessage, ie.Document.links(i).innerText&".mht"
   End if

Next

next

ie.quit
Set ie=nothing


类别:每天一例 | 添加到搜藏 | 浏览() | 评论 (11)
 
最近读者:
 
网友评论:
1
2008年08月14日 星期四 下午 05:25 | 回复
感觉还是不如用blog_backup 备份快速、方便 不过还是挺受用的 对vbs有了解了不少~~~~~~~
 
2
2008年08月14日 星期四 下午 05:49 | 回复
过眼云烟~~~~~~~不过话说我对备份的事也挺感兴趣.只是对这些代码....没感觉
 
3
2008年08月14日 星期四 下午 10:08 | 回复
哦、、、好强大、。。
 
5
2008年08月31日 星期日 下午 12:45 | 回复
试用了一下,发现能生成博客文章列表的url.htm,但是生成的mht文件都是1k的空文件。怎么回事儿呢?
 
6
2008年08月31日 星期日 下午 03:39 | 回复
不会的,我本机测试没问题.可能有两个原因,第一是你用法错了;第二是你机器不支持CDO.Message.第一个原因嫌疑最大.
 
9
2008年09月02日 星期二 上午 11:05 | 回复
怎么回事儿?我发的评论都没了?发了两次都没了?不是博主你自己删的吧?
 
10
2008年09月02日 星期二 上午 11:14 | 回复
不是我删的呀,可能是百度的问题
 
11
2008年09月02日 星期二 上午 11:20 | 回复
我备份了一下你的blog。用法如下: cscript c.vbs felid2005 0 3 url.htm 1 2 其中c.vbs是我的脚本,最后的1,2代表你的用户名和密码,我随便写的。 备份结果没有问题.
 
12
2008年09月02日 星期二 上午 11:21 | 回复
C:\2>dir *.mht Volume in drive C has no label. Volume Serial Number is A843-89C3 Directory of C:\2 2008-09-02 11:19 44,125 zt广州的香妃国际连锁美容院的减肥按摩方法.mht 2008-09-02 11:19 40,723 “四”字功能治呼吸道疾病-肺经 咽炎.mht 2008-09-02 11:19 38,668 一篇祷文.mht 2008-09-02 11:19 176,628 中里巴人-求医不如求己 摘录.mht 2008-09-02 11:19 176,183 人生的选择.mht 2008-09-02 11:19 38,076 今天作了背部的走罐.mht 2008-09-02 11:19 174,320 信心 行动 改变.mht 2008-09-02 11:19 175,775 关于sns网站.mht 2008-09-02 11:19 39,252 关于偶像崇拜的感想.mht 2008-09-02 11:19 177,294 关于房地产:分别列出看多方和看空方的理由.mht ====================略
 
14
2008年09月02日 星期二 下午 03:37 | 回复
真是奇了怪了,既然你下载没问题,那就应该我自己系统的问题。我再试试看吧,谢了!
 
15
2008年09月20日 星期六 上午 11:44 | 回复
楼主你好,我备份时发现仍然无法备份私有文章,公开的都没有问题,但是私有的全市空的 格式: cscript bak.vbs blog\后面的 0 2 url.htm 帐号 密码
 
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
验证码: 请点击后输入四位验证码,字母不区分大小写
      

     

©2009 Baidu