首页 电脑 电脑学堂 查看内容

百度blog备份脚本baidublogbak.vbs

2008-12-9 10:47 489 0

摘要:   作者:lcx  '=========================================================================================...
关键词: wscript document links ie args CreateObject Strm Item 目录 备份

  作者:lcx  '=========================================================================================================  '用法示例:  '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
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部