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

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

(0)

相关推荐

  • 百度空间备份脚本baidublogbak.vbs代码分析

    '用法示例: '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页计数的 '如果用户名和密码随便写也可以备份,

  • tomcat应用文件备份脚本及日志备份脚本的示例代码

    下面先给大家介绍tomcat应用文件备份脚本 #!/bin/bash #Back up the entire tomcat8080-dist to the /backup directory backuppath=/mnt/tomcat8080-dist/webapps/ backpath=/backup/backup-tomcat8080-dist/ action=/backup/backup-tomcat8080-dist/ APPNAME=dist BACKUPNAME1=dist BAC

  • rman备份脚本和rman增量备份脚本分享

    一.单独备份1.经典整库备份:backup as compressed backupset database include current controlfile plus archivelog delete all input;2.tablespace:backup tablespace 名字;3.数据文件:backup datafile n; (n:具体的数据文件编号select file_name,file_id,tablespace_name from dba_data_files;)

  • 百度空间的popup效果分析第1/3页

    百度空间的弹出窗口和拖拽效果,看起来挺不错的.现在很多知名网站都是用的这样的技术.下面把我down的js代码发出来,我分析了一部分,但是还有很多东西不明白怎么回事,没有写注释的部分,还请高手能帮我解释一下.本人属于初学,有不对的地方还请多多指教. 在声明一条吧,此代码仅做学习用,技术版权属于百度. 主要是一个叫做:popup.js的文件,如下: /**//*********************************************** popup.js***************

  • Ubuntu Server下MySql数据库备份脚本代码

    说明: 我这里要把MySql数据库存放目录/var/lib/mysql下面的pw85数据库备份到/home/mysql_data里面,并且保存为mysqldata_bak_2012_04_11.tar.gz的压缩文件格式(2012_04_11是指备份执行时当天的日期), 最后只保留最近7天的备份. 实现步骤: 1.创建保存备份文件的目录:/home/mysql_datacd /home #进入目录mkdir mysql_data #创建目录2.创建备份脚本文件:/home/mysql_data/

  • linux下mysql自动备份脚本代码

    脚本放在 /home/user/mysql_backup.sh crontab # crontab -l # m h dom mon dow command 28 16 * * * /home/user/mysql_backup.sh 脚本如下 复制代码 代码如下: #!/bin/sh # mysql_backup.sh: backup mysql databases and keep newest 5 days backup. # # Last updated: 20 March 2006 #

  • 简单的SQL Server备份脚本代码

    一般的情况下我们会选用SQL Server自带的数据库维护计划来定义备份. 但有些时候,有的机器数据库维护计划不能成功实现备份.  错误原因可能不尽相同, 这时我们可以用简单的SQL Server备份脚本来做备份. 生成简单的SQL Server备份脚本的SQL语句:   use master   select 'backup database '+name+' to disk=''F:\sqlserver_backup\'+name+'.bak'' with init' from sysdat

  • Linux VPS/服务器 网站及数据库自动本地备份并FTP上传备份脚本

    准备工作: 需要提前在VPS安装好lftp,lftp功能上比较强大,CentOS直接执行:yum install lftp,Debian执行:apt-get install lftp . 需要在VPS上创建/home/backup/ 目录,在FTP上创建backup目录. 如果VPS上数据库不多的话使用Godaddy的免费空间就可以(10GB空间,300GB流量),只要注册个域名就免费送. 下面将备份脚本进行部分注释: 复制代码 代码如下: #!/bin/bash #Funciont: Back

  • Zend Framework框架路由机制代码分析

    本文分析了Zend Framework框架路由机制代码.分享给大家供大家参考,具体如下: 在框架中,有关路由的调用关系为: 1.apache的mod_rewrite模块把请求路由到框架的启动脚本,一般是index.php: 2.前端控制器Zend_Controller_Front通过dispatch函数进行请求分发: 3.路由器Zend_Controller_Router_Rewrite通过route函数处理路由,对路由器中已有的路由规则,按照加入顺序的逆序(类似于栈,后进先出)对每个route

  • linux下实现VPS免费备份脚本

    有人说你怎么不备份呢?这个问题我也考虑过啊,其实你有没有想过对于这种国外的vps什么的,备份一下所有的网站怎么说也得百十兆吧. 你总不能天天去下载吧?这带宽可受不了,就算是带宽充足,说不定vps哪天也让你给下载挂了. ok~切入正题,先说这个免费备份的问题,实际上也不免费,只是有个前提,那就是你在godaddy.com的买的有域名,大家都知道在godaddy上买域名可以免费申请空间的,对于不用这东西的来说实在是太浪费了,所以今天的主题就是针对那些在godaddy买过域名有免费空间的盆友(在god

随机推荐