主页
文章
分类
系列
标签
关于
友链
【插件】神梦填表插件 SmWeb.dll
【插件】神梦填表插件 SmWeb.dll,【IE】【谷歌】【网页】【元素】
发布于: 2023-11-26   更新于: 2023-12-3   收录于: 按键精灵
文章字数: 3495   阅读时间: 7 分钟   阅读量:

【插件】神梦填表插件 SmWeb.dll,【IE】【谷歌】【网页】【元素】

神梦填表插件COM版出来了!

支持 IE、谷歌浏览器

支持跨域夸框架穿透填表

【元素智能定位】

【上传文件】

【处理弹窗】

【滑动验证码】

【执行JS】

smweb.png

插件预览

1.jpg 2.jpg

演示例子

3.gif

插件例子

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
'【神梦填表插件 SmWeb.dll 演示按键例子】
'作者:神梦无痕
'QQ:1042207232
'Q群:624655641

'插件版本号
TracePrint "插件版本号:" & Plugin.SmWeb.Ver()


TracePrint("**********************【神梦填表插件 SmWeb.dll 演示按键例子】**********************")
//生成插件帮助文档
TracePrint(Plugin.SmWeb.About())

//初始化插件
Call Plugin.SmWeb.Init()


绑定句柄数组 = Array("IE.exe", "Chrome.exe")
For iw = 0 To UBound(绑定句柄数组)
	//绑定浏览器
	Tips("正在绑定浏览器:" & 绑定句柄数组(iw)) : TracePrint(运行状态)
	If Plugin.SmWeb.Bind(绑定句柄数组(iw)) = False Then 
		MsgBox "出错,绑定浏览器失败!"
		ExitScript 
	End If
	
	
	Tips("打开 SmWeb 测试页面") : TracePrint(运行状态)
	Call Plugin.SmWeb.TabGo("http://127.0.0.1:8008/SmWeb.html")
	Call Plugin.SmWeb.TabIsReady(30)  '判断网页是否加载完毕
	Delay(2000)
	
	
	'网页截图
	Tips("【网页截图】:截取区域 0, 0, 400, 200 范围图像保存到文件 C:\1.png") : TracePrint(运行状态)
	Call Plugin.SmWeb.TabSnapShot(0, 0, 400, 200, "C:\1.png")
	Delay(2000)
	
	
	'【预处理弹窗】:提前为弹出窗口做准备(点击确定按钮)
	Call Plugin.SmWeb.TabGo("#TabPreDialog"):Delay(1000)
	Tips("【预处理弹窗】:提前为弹出窗口做准备(三个连续弹窗,需要点击三个按钮:true=确定;false=取消)") : TracePrint(运行状态)
	Call Plugin.SmWeb.TabPreDialog("神梦无痕", "true|false|true")
	'点击按钮,弹出窗口
	Tips("点击【无返回弹窗】") : TracePrint(运行状态)
	Call Plugin.SmWeb.HtmlClick("#myPreDialog_alert")
	Tips("点击【有返回值弹窗】") : TracePrint(运行状态)
	Call Plugin.SmWeb.HtmlClick("//*[@id='myPreDialog_confirm']")
	Tips("点击【可输入内容弹窗】") : TracePrint(运行状态)
	Call Plugin.SmWeb.HtmlClick("id:myPreDialog_prompt")
	'获取弹窗内容
	Tips("【获取弹窗内容】:" & Plugin.SmWeb.TabGetDialog()) : TracePrint(运行状态)
	Delay (2000)
	
	
	'元素点击
	Call Plugin.SmWeb.TabGo("#HtmlClick"):Delay(1000)
	Tips("【点击元素】:" & Plugin.SmWeb.HtmlClick("id:myClick")) : TracePrint(运行状态)
	Delay(1000)
	
	
	'输入文本内容
	Call Plugin.SmWeb.TabGo("#HtmlInput"):Delay(1000)
	Tips("【输入框】:神梦无痕") : TracePrint(运行状态)
	Call Plugin.SmWeb.HtmlInput("神梦无痕", "#myInput")
	Delay(1000)
	
	
	'勾选单/复选框
	Call Plugin.SmWeb.TabGo("#HtmlCheck"):Delay(1000)
	Tips("【单选框】:勾选") : TracePrint(运行状态)
	Call Plugin.SmWeb.HtmlCheck(True, "[id='myRadio']")
	Tips("【复选框】:勾选") : TracePrint(运行状态)
	Call Plugin.SmWeb.HtmlCheck(True, "//*[@id='myCheck']")
	Delay(1000)
	
	
	'设置下拉框
	Call Plugin.SmWeb.TabGo("#HtmlSelect"):Delay(1000)
	Tips("【下拉框】:香蕉") : TracePrint(运行状态)
	Call Plugin.SmWeb.HtmlSelect("香蕉", "id:mySelect")
	Delay(1000)
	
	
	'设置元素信息
	Call Plugin.SmWeb.TabGo("#HtmlSet"):Delay(1000)
	Tips("【设置信息】:value") : TracePrint(运行状态)
	Call Plugin.SmWeb.HtmlSet("value", "【作者】:神梦无痕", "id:mySet")
	Delay(1000)
	Tips("【设置信息】:name") : TracePrint(运行状态)
	Call Plugin.SmWeb.HtmlSet("name", "QQ_1042207232", "id:mySet")
	Delay(1000)
	
	
	'获取元素信息
	Tips("【获取信息】:value") : TracePrint(运行状态)
	Tips ("      :" & Plugin.SmWeb.HtmlGet("value", "id:mySet")) : TracePrint (运行状态)
	Delay(1000)
	Tips("【获取信息】:outerHTML") : TracePrint(运行状态)
	Tips("      :" & Plugin.SmWeb.HtmlGet("outerHTML", "id:mySet")) : TracePrint(运行状态)
	Delay(1000)
	
	
	'滚动到指定元素
	Call Plugin.SmWeb.TabGo("#HtmlScroll"):Delay(2000)
	Tips("【滚动定位】:" & Plugin.SmWeb.HtmlScroll("name:HtmlHover")) : TracePrint(运行状态)
	Delay(2000)
	
	
	'鼠标在元素上悬停
	Tips("【元素悬停】:" & Plugin.SmWeb.HtmlHover("#myHover")) : TracePrint(运行状态)
	Delay(1000)
	
	
	'滑动验证码
	Call Plugin.SmWeb.TabGo("#HtmlSwipe"):Delay(1000)
	Tips("【滑动验证】:" & Plugin.SmWeb.HtmlSwipe(128, 420, 400, 420, "#Swipe_btn")) : TracePrint(运行状态)
	Delay(1000)
	
	
	
	'执行元素事件
	Call Plugin.SmWeb.TabGo("#HtmlEvent"):Delay(1000)
	Tips("【执行事件】:鼠标左键按下") : TracePrint(运行状态)
	Call Plugin.SmWeb.HtmlEvent("mousedown", "#myEvent")
	Tips("【执行事件】:输入框改变") : TracePrint(运行状态)
	Call Plugin.SmWeb.HtmlEvent("change", "#myEvent")
	Delay(1000)
	
	
	'上传图片文件
	Call Plugin.SmWeb.TabGo("#HtmlInputFile") : Delay(1000)
	Tips("【图片路径】:C:\1.png") : TracePrint(运行状态)
	Call Plugin.SmWeb.HtmlInputFile("C:\1.png", "id:myInputFile")
	Delay(1000)
	
	
	'添加/还原元素边框
	Call Plugin.SmWeb.TabGo("#HtmlBorder") : Delay(1000)
	Tips("【添加边框】:" & Plugin.SmWeb.HtmlBorder(True, "//*[@id='myBorder']")) : TracePrint(运行状态)
	Delay(1000)
	Tips("【还原边框】:" & Plugin.SmWeb.HtmlBorder(False, "//*[@id='myBorder']")) : TracePrint(运行状态)
	Delay(1000)
	
	
	'启用/禁用元素
	Call Plugin.SmWeb.TabGo("#HtmlEnabled") : Delay(1000)
	Tips("【禁用元素】:" & Plugin.SmWeb.HtmlEnabled(False, "#myEnabled")) : TracePrint(运行状态)
	Delay(1000)
	Tips("【启用元素】:" & Plugin.SmWeb.HtmlEnabled(True, "#myEnabled")) : TracePrint(运行状态)
	Delay(1000)
	
	
	'显示/隐藏元素
	Call Plugin.SmWeb.TabGo("#HtmlVisible") : Delay(1000)
	Tips("【隐藏元素】:" & Plugin.SmWeb.HtmlVisible(False, "id:myVisible")) : TracePrint(运行状态)
	Delay(1000)
	Tips("【显示元素】:" & Plugin.SmWeb.HtmlVisible(True, "id:myVisible")) : TracePrint(运行状态)
	Delay(1000)
	
	
	'判断元素是否启用
	Call Plugin.SmWeb.TabGo("#HtmlIsEnabled") : Delay(1000)
	Tips("【是否启用】:" & Plugin.SmWeb.HtmlIsEnabled("[id='myIsEnabled']")) : TracePrint(运行状态)
	Delay(1000)
	
	
	'判断元素是否显示
	Call Plugin.SmWeb.TabGo("#HtmlIsVisible") : Delay(1000)
	Tips("【是否显示】:" & Plugin.SmWeb.HtmlIsVisible("[id='myIsVisible']")) : TracePrint(运行状态)
	Delay(1000)
	
	
	'保存验证码图片
	Call Plugin.SmWeb.TabGo("#HtmlImage") : Delay (1000)
	Tips ("【保存验证码】:C:\yzm.jpg") : TracePrint (运行状态)
	Call Plugin.SmWeb.HtmlImage("C:\yzm.jpg", "id:myImage")
	Delay (1000)
	
	
	'获取元素坐标
	Call Plugin.SmWeb.TabGo("#HtmlOffset") : Delay (1000)
	Tips ("【元素坐标】:" & Plugin.SmWeb.HtmlOffset("id:myOffset")) : TracePrint (运行状态)
	Delay (1000)
	
	
	'获取 CSS 选择器
	Call Plugin.SmWeb.TabGo("#HtmlReadCSS") : Delay(1000)
	Tips("【CSS 选择器】:" & Plugin.SmWeb.HtmlReadCSS("body > table:nth-child(71) > tbody > tr:nth-child(6) > td > input")) : TracePrint(运行状态)
	Delay(1000)
	
	
	'获取 XPath 选择器
	Call Plugin.SmWeb.TabGo("#HtmlReadXPath") : Delay(1000)
	Tips("【XPath选择器】:" & Plugin.SmWeb.HtmlReadXPath("/html/body/table[72]/tbody/tr[6]/td/input")) : TracePrint(运行状态)
	Delay(1000)
	
	
	'获取 WQM 选择器
	Call Plugin.SmWeb.TabGo("#HtmlReadWQM") : Delay(1000)
	Tips("【WQM 选择器】:" & Plugin.SmWeb.HtmlReadWQM("tag:INPUT&index:29")) : TracePrint(运行状态)
	Delay(1000)
	
	
	'设置表格内容
	Call Plugin.SmWeb.TabGo("#myTable") : Delay(1000)
	Tips("【设置1行一列】:神梦无痕") : TracePrint(运行状态)
	Call Plugin.SmWeb.HtmlTable(0, 1, 1, "神梦无痕", "#myTable")
	Delay(1000)
	Tips("【设置2行一列】:小雪") : TracePrint(运行状态)
	Call Plugin.SmWeb.HtmlTable(0, 2, 1, "小雪", "//*[@id='myTable']")
	Delay(1000)
	Tips("【设置3行二列】:女") : TracePrint(运行状态)
	Call Plugin.SmWeb.HtmlTable(0, 3, 2, "女", "id:myTable")
	Delay(1000)
	
	
	'获取表格内容
	Call Plugin.SmWeb.TabGo("#myTable") : Delay(1000)
	Tips ("【获取1行一列】:" & Plugin.SmWeb.HtmlGetTable(0, 1, 1, "#myTable")) : TracePrint (运行状态)
	Delay(1000)
	Tips ("【获取2行一列】:" & Plugin.SmWeb.HtmlGetTable(0, 2, 1, "//*[@id='myTable']")) : TracePrint (运行状态)
	Delay(1000)
	Tips("【获取3行二列】:" & Plugin.SmWeb.HtmlGetTable(0, 3, 2, "id:myTable")) : TracePrint(运行状态)
	Delay(1000)
	
	
	'获取列表内容
	Call Plugin.SmWeb.TabGo("#HtmlGetList") : Delay(1000)
	Tips ("【获取索引 0 内容】:" & Plugin.SmWeb.HtmlGetList(0, "#myGetList")) : TracePrint (运行状态)
	Delay(1000)
	Tips ("【获取索引 1 内容】:" & Plugin.SmWeb.HtmlGetList(1, "//*[@id='myGetList']")) : TracePrint (运行状态)
	Delay(1000)
	Tips("【获取索引 2 内容】:" & Plugin.SmWeb.HtmlGetList(2, "id:myGetList")) : TracePrint(运行状态)
	Delay (1000)
	
	
	'退出浏览器
	Call Plugin.SmWeb.TabGo("#Quit") : Delay(1000)
	Tips("正在退出浏览器!") : TracePrint(运行状态)
	Call Plugin.SmWeb.Quit()
	Delay (1000)
Next 
MsgBox "脚本执行完毕!"

Sub Tips(提示)
	运行状态 = 提示
	Call Plugin.Msg.Tips(提示)
End Sub

插件下载

百度网盘: https://pan.baidu.com/s/1QdQU6J4h_6WNUIkGqdSR1w?pwd=n4w7




微信公众号:梦痕编程




文章标题:【插件】神梦填表插件 SmWeb.dll
本文作者:神梦无痕
本文链接:https://smwhff.com/posts/smweb-dll/
版权声明:本人所有文章除特别声明外,都遵守 BY-NC-SA 协议条款。转载请注明出处!