您当前的位置:首页 > 计算机 > 编程开发 > VB

用VBS实现公司自动打卡

时间:01-20来源:作者:点击数:

公司每天要求早晚打卡,方式是登录某一个页面,然后点击上面的圈圈,如下图:

每天都要打开书签,登录这个页面,然后打卡。。。这么重复性的工作,怎么能是程序员天天干的事情呢(其实是我太懒了),那么就尝试让程序来解决吧!

最开始想的是用python,然后深入想了一下之后发现本人学艺不精,涉及到urllib的东西一大堆,完全不想去研究,毕竟我只是想打个卡啊!接下来又想到了cmd,尝试了一下可以用批处理打开浏览器并进入到打卡的页面,但是接下来怎么点击中间的那个ball呢?谷歌了一上午,没啥发现,倒是无意中在某论坛里看到有用vbs来做类似的事情的,于是研究了一下并不熟悉的代码,凭着天马行空的猜测弄出来了下面这个鬼东西:

dim ie
set ie =wscript.createobject("internetexplorer.application")
set wshell=createobject("wscript.shell")

ie.navigate "http://某打卡网址"
ie.visible=1
Do Until ie.ReadyState = 4 '等待页面加载完成
    wscript.sleep 1000
Loop

wshell.sendKeys "{ENTER}" '在这里要确认自己的账号密码,所以需要模拟按一下回车
Do Until ie.ReadyState = 4
    wscript.sleep 1000
Loop

wscript.sleep 1000

For i=0 To ie.document.all.length-1
    if i=396 then'经过无数次调试之后发现页面上打卡的元素(也就是那个ball)相对于网页第一个元素的偏移量是396,不要问我为什么这么写,因为我不会网页设计,用不来document.getelementByid,主要的难度也就在这里了,都是泪   ie.document.all(i).click end if Next msgbox "Done!"

有了脚本,再在windows里设置一个计划任务,妈妈再也不用担心我忘记打卡了

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门