2024年1月14日发(作者:)
无纸化学法用及考试系统(自动登陆及自动答题脚本)
一、自动登陆源码:
说明:这个没什么好说的,查找网页元素的ID号,根据ID号填表。
On Error Resume Next
s =
If s > 0 Then ny = MsgBox("如果你没有“提交试卷”,请选择“否”。否则,你会没有成绩。"
& Chr(13) + Chr(10) & "请提交试卷后再退出本软件!", vbQuestion + vbYesNo, "请提交试卷后再退出本软件")
If ny = vbNo Then
SetWindowPos , -1, 0, 0, 0, 0, 3 '设置窗口总在最前面
Else
Set ie = Nothing
(True)
Set xlApp = Nothing
Set dm = Nothing
Unload Me
End If
End Sub
Private Sub Command1_Click()
On Error Resume Next '错了断续
'eGif 0, 300, 640, 780, "", 100, 20000
If <> "" Then
'Set ie = GetObject("", "ation")
te '打开文本框中的网址
'State = 1
Do Until tate = 4 '循环直到网址装载完毕
DoEvents
j = j + 1
If j > 65530 Then
MsgBox "打开无纸学法用法考试网址失败,请联系管理员。"
Exit Sub
End If
Loop
Delay 500
("type2").Click '单击选择“普法考试平台”
Delay 200
("name").Value = '输入登陆用户名
("password").Value = "888888" '输入登陆密码
Delay 100
("INPUT")(3).Click '单击“登陆”
Delay 500
Call InExam '输入正确,进入下一步
Else
MsgBox "请输入你的登陆账号!"
us
End If
SetWindowPos , -1, 0, 0, 0, 0, 3 '设置窗口总在最前面
Private Function InExam()
On Error Resume Next
dm_ret = r(0, 0, 800, 700, "进入考试", "000000-000000", 1#, intX, intY)
If intX >= 0 And intY >= 0 Then
SetCursorPos intX, intY
mouse_event &H2 Or &H4, 0, 0, 0, 0
Else
MsgBox "现在不是考试时间,请联系管理员。"
End If
SetWindowPos , -1, 0, 0, 0, 0, 3 '设置窗口总在最前面
Delay 800
dm_ret = r(200, 100, 1024, 800, "开始考试", "006699-000000", 1#, intX, intY)
If intX >= 0 And intY >= 0 Then
SetCursorPos intX, intY
mouse_event &H2 Or &H4, 0, 0, 0, 0
End If
dm_ret = t(0, "")
Delay 800
dm_ret = r(0, 0, 1024, 600, "确定", "000000-000000", 1#, intX, intY)
If intX >= 0 And intY >= 0 Then
SetCursorPos intX + 5, intY + 5
mouse_event &H2 Or &H4, 0, 0, 0, 0
End If
Delay 800
End Function
二、进入考试中心后,接下来就是自动答题了。
说明:1、将题目内容与题库内的题比较,在题库中找到题目后,然后将试卷中正确答案前的选择框选择上。(不知道这样说清楚了没有?还是看下面的视频吧)
endFcomp = 0
SetWindowPos , -1, 0, 0, 0, 0, 3 '设置窗口总在最前面
dm_ret = t(0, "")
t 0
ss:
For Cnt = 1 To 400
If GetAsyncKeyState(vbKeyEscape) Then Exit For
If endF = 17 And Fag = 2 Then
by 0, 100
Delay 10
own
Delay 500
n = "正在完成判断题的第:18题。"
dm_ret = r(30, 50, 800, 600, "18题", "ff3300-000000", 1#, intX, intY)
If intX >= 0 And intY >= 0 Then
s = (intX + 10, intY - 3, intX + 700, intY + 15, "000000-000000", 1#)
s = Left(s, Len(s) - 5)
Call anser2(s, intX + 25, intY)
End If
by 0, 200
own
Delay 500
n = "正在完成判断题的第:19题。"
dm_ret = r(30, 50, 800, 700, "19题", "ff3300-000000", 1#, intX, intY)
If intX >= 0 And intY >= 0 Then
s = (intX + 10, intY - 3, intX + 700, intY + 15, "000000-000000", 1#)
s = Left(s, Len(s) - 5)
Call anser2(s, intX + 25, intY)
End If
by 0, 300
own
Delay 500
n = "正在完成判断题的第:20题。"
dm_ret = r(30, 50, 800, 800, "20题", "ff3300-000000", 1#, intX, intY)
If intX >= 0 And intY >= 0 Then
s = (intX + 10, intY - 3, intX + 700, intY + 15, "000000-000000", 1#)
s = Left(s, Len(s) - 5)
Call anser2(s, intX + 25, intY)
End If
SetCursorPos 1010, 500
wn
SetCursorPos 1010, 300
Delay 200
dm_ret = r(600, 150, 1000, 400, "提交试卷", "103e89-000000", 1#, intX,
intY)
If intX >= 0 And intY >= 0 Then
SetCursorPos intX + 10, intY + 3
mouse_event &H2 Or &H4, 0, 0, 0, 0
End If
by 0, -500
n = "会做的我都做完了,你检查一下,没有做的请你自己完成。记得“提交试卷”啊。。。"
SetWindowPos , -1, 0, 0, 0, 0, 3 '设置窗口总在最前面
Exit For
End If
dm_ret = r(30, 50, 800, 600, "】", "ff3300-000000", 1#, intX, intY)
If intX >= 0 And intY >= 0 Then
s = (intX, intY - 3, intX + 700, intY + 15, "000000-000000", 1#)
s = Left(s, Len(s) - 5)
endF = (intX - 30, intY - 1, intX - 5, intY + 12, "ff3300-000000", 1#)
If endF = "" Then
MsgBox "程序不能正确识别您的电脑,请联系作者:QQ1276652066"
Exit For
End If
If endF = endFcomp Then '是原来的题,向下滚动
SetCursorPos intX - 30, intY
mouse_event &H2 Or &H4, 0, 0, 0, 0
own
Delay 500
GoTo ss:
End If
If endFcomp = 40 Then
'MsgBox "单选题已经完成,下面进入多选题。"
Fag = Fag + 1
Set xlBook = Nothing
Set xlSheet = Nothing
End If
' s
Select Case Fag
Case 0
n = "正在完成单选题的第:" & endF & "题。"
Call anser(s, intX, intY) '进入单选查找答案
Case 1
n = "正在完成多选题的第:" & endF & "题。"
Call anser1(s, intX, intY) '进入多选查找答案
Case 2
n = "正在完成判断题的第:" & endF & "题。"
Call anser2(s, intX, intY) '进入判断查找答案
End Select
Else
MsgBox "不能进入考试,怎么回事??" & Chr(13) + Chr(10) & "请联系本软件作者:QQ1276652066", vbQuestion, "出错了!!"
Exit For
End If
SetCursorPos intX - 30, intY
mouse_event &H2 Or &H4, 0, 0, 0, 0
own
Delay 500
endFcomp = endF
Next


发布评论