背景 : 公司里的销售需要长期手动在网站上跟踪客户资料,我就用按键做了个自动的 给同事们使用。
友情价20块一个账号使用一年,并且每天限制了点启动按钮开始 只能运行2个小时。
因为电脑版按键提供了直连sql server数据库的插件 ,很是方便 那么就可以做很多事了, 比如网络验证、比如云控...
--------------------------------------------------------------------------------------------------------------------- ----------------------------
↓↓↓↓为此我创建了一个脚本配置表↓↓↓↓
--脚本配置表
CREATE TABLE ScriptConfig
(
id int identity(1,1) primary key,
qidongTime DATETIME, --启动时间
Num VARCHAR(50), --账号
Remark VARCHAR(50), --备注标识
ShopTime VARCHAR(50), --购买日期
UserName VARCHAR(50), --用户姓名
isczyc VARCHAR(10), --是否操作异常
caozuoTime VARCHAR(50), --操作时间
caozuoBrowser VARCHAR(100), --操作浏览器
dataID VARCHAR(50) --资料ID
)
go
↓↓↓↓数据是这样显示的↓↓↓↓
↓↓↓↓好了 上按键源码↓↓↓↓
//指定服务器地址,使用用户名密码连接到数据库名
连接状态 = Plugin.SQLServer.Connect("bds*******.my3w.com", "bds****", "*****", "bds*****_db")
If 连接状态 = - 1 Then
TracePrint "连接成功!"
name = "a463392823"
qidongTime = Plugin.SQLServer.SelectData("ScriptConfig", "qidongTime", "Num = '" & name & "'")//获取账号为a463392823的启动时间
TracePrint "取启动时间:" & qidongTime
If qidongTime = "" Then
MessageBox "查无此账号,请联系开发者绑定!"
EndScript
End If
字段 = split(qidongTime, "|")
//分割 取启动时间
If UBound(字段) <> 0 Then
qidongTime = 字段(0)
TracePrint "配置时间:"&qidongTime
Pyue = DatePart("m", qidongTime)//取启动月
Pri = DatePart("d", qidongTime)//取启动日
Delay 200
Wtime = Lib.网络.获取网络时间()
Delay 200
TracePrint "网络时间:" & Wtime
Wyue = DatePart("m", Wtime)//取网络月
Wri = DatePart("d", Wtime)//取网络日
If Pyue = Wyue and Pri = Wri Then //如果启动日月和网络日月相同,说明是当天,开始对比时间是否超限
Wtime = Replace(Wtime, "/", "-")//替换为合适的时间格式
秒差 = datediff("s", qidongTime, Wtime)//对比后得到秒差
小时差 = 秒差 / 60 / 60 //获取小时差
TracePrint 小时差
If 小时差 < 2 Then
Goto 时间差
Else
MessageBox "当天运行时间不足,请明日再试!(每天只能运行两个小时)"
EndScript
End If
Else //如果不是当天
//修改为当天
修改配置时间 = Plugin.SQLServer.UpdateData("ScriptConfig", "qidongTime = '" & Wtime & "'", "Num = '" & name & "'")
TracePrint "已修改启动时间为当天"
End If
Else
TracePrint "空数据"
修改配置时间 = Plugin.SQLServer.UpdateData("ScriptConfig", "qidongTime = '" & Wtime & "'", "Num = '" & name & "'")
End If
//断开数据库连接
断开数据库连接 = Plugin.SQLServer.Close()
Elseif 连接状态 = 0
TracePrint "连接失败!"
EndScript
End If
Rem 时间差
从源码可以看出我的思路是 在数据库里存储脚本的启动时间,脚本每次启动都会获取对应账号的启动时间,如果是当天的话就计算是否超过了2个小时,超过给个提示停止脚本,不超过继续运行;不是当天的话往数据库里记录当前时间 并继续运行
能够限时自然也能做更复杂的网络验证 比如各种限制登陆,电脑版按键能做的东西其实手机按键也都能做,无非是绕下弯,手机按键得通过“中转站”来连接数据库进行操作,详情可以去看之前发布的博客:按键精灵手机版(安卓 ios) 如何连接远程网络数据库 比如 sql server, 进行读写操作
思路可能不是最好的,大家有什么好的想法思路可以在下面留言
或进Q群 862088303 互相交流