前两天也写过一篇关于vbs更改IP址的文章,当时之所以有兴趣看了下vbs是因为今天这个主题。网上找了一些刷网站流量的工具,不是收费就是里面插入的有自己的页面。所以就索性想自己写一个。又不是通过delphi和vb去写(好久没碰过了,差不多都忘光了),所以就想用一种轻便的语言去完成该工作。当时想到了powershell ,不过后来一想,不是刚好有接触到vbs吗!而且写起来也不是很麻烦。所以就自己摸索了下,写出了以下的代码:
首先,第一个是页面循环的。要等待一定的时间后,跳到下一个页面。(降低跳出率,其实这个工具写出来是针对百度统计的),代码如下:
option explicit
dim fso,fread,strline,oShell
set fso=createobject(“scripting.filesystemobject”)
set fread=fso.opentextfile(“site.txt”,1)
Set oShell=WScript.CreateObject(“WScript.Shell”)
do until fread.atendofstream
strline=fread.readline
oShell.run strline
wscript.sleep 1000 ‘时间可以改,想多长时间跳下个页面就改改多长
loop
fread.close
set fso=nothing
oShell.run “taskkill /f /im iexplore.exe”
将你的站点内容保存到site.txt中
接下来是代理定期更改部分(针对IE的,如果是foxfire或者360浏览器,代码可以自行再修改):

dim fso,fread,strline
set fso=createobject(“scripting.filesystemobject”)
set fread=fso.opentextfile(“ip.txt”,1)
do until fread.atendofstream
str=fread.readline
IPTemp = Split(str, “:”)
ChangeProxy IPTemp(0), IPTemp(1)
wscript.sleep 1000*120
loop
fread.close
set fso=nothing

‘使用WMI切换IE代理(Use WMI Change IE Proxy)

Function ChangeProxy(IP, Port)
‘获取计算机名
‘Set oNetwork = WScript.CreateObject(“WScript.Network”)
‘computername=oNetwork.ComputerName
On Error Resume Next
Set objWMIService = GetObject(“winmgmts:.rootCIMV2”)
Set objShare = objWMIService.Get(“Win32_Proxy.ServerName=’computername’”)
Set objInParam = objShare.Methods_(“SetProxySetting”).inParameters.SpawnInstance_()
objInParam.Properties_.Item(“ProxyPortNumber”) = Port
objInParam.Properties_.Item(“ProxyServer”) = IP
Set objOutParams = objWMIService.ExecMethod(“Win32_Proxy.ServerName=’computername’”, “SetProxySetting”, objInParam)
End Function
最后,一个批处理循环调用上面两个vbs文件。就可以不停的循环刷机了。
@echo off
:loop
cls
cscript “页面循环.vbs”
cscript “代理.vbs”
goto loop
最后附上附件和一份vbs和批处理的一个简单的学习文档。
注:以上代码在xp系统下,IE6和IE8环境下测试均通过。IE6是后一页面覆盖前一页面打开,始终保持一个页面。IE8是一个页面下打开多个标签面,都在同一屏显示。
[download id=”1″]