当前位置: 首页 > 图文教程 > 脚本技术 > VBScript > 百度空间备份脚本baidublogbak.vbs代码分析

VBScript
用vbs清空iis log 中自己登录ip的记录
vbs sendmail发邮件带附件方法
用vbs通过135端口执行命令的脚本
用vbs实现的瞬间关闭多个系统进程的脚本
vbs 中调用shell.application 简单函数
vbs wmi获取电脑硬件信息实例
用vbscript实现隐藏任务栏图标的脚本
vbs正则表达式代码
vbs版IP地理位置查询小偷
超级厉害的VBS定时提醒脚本 Remind.vbs
vbs实现的支持拖动的txt文本切割器
VBS如何察看或获得剪切板内容的脚本
VBS备忘录启动代码
VBS脚本使用WMI操作注册表的代码
vbs xmldom初次实战获取QQ签名的代码
VBS破坏性应用代码
vbs生成ACCESS数据里所有表的字段
vbs实现的图片自适应表格,目前最佳解决方案!
ProcessMagnifier.vbs进程查看
用于提取网易文件的hta代码

VBScript 中的 百度空间备份脚本baidublogbak.vbs代码分析


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 55 ::
收藏到网摘: n/a

'用法示例:
'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