金猪脚本编程语言,教学包括全自动办公脚本
优采云 发布时间: 2021-08-02 04:36金猪脚本编程语言,教学包括全自动办公脚本
金猪脚本(原飞猪脚本)以按钮精灵教学为主,涉及UiBot、Python、Lua等脚本编程语言,教学包括全自动办公脚本、游戏辅助脚本、引流脚本、网页脚本、Android脚本、IOS脚本、注册脚本、喜欢脚本、阅读脚本、网赚脚本等各个领域。想制作脚本学习按钮精灵的朋友可以加按钮精灵学习交流群:554127455 学习路上不再孤单,金猪脚本与你一起成长。
最近遇到同学反馈,网页上没有特征值的文本元素不知道如何获取。而且,我不知道如何获取和保存网页上出现的图片。
获取网页的指定文本:
目前按钮支持的元素的特征值有:frame(框架)、id(唯一标识)、tag(标签)、type(类型)、txt(文本)、value(特征)、 index(index),name(Name)只有具有这些特征值的元素才能直接使用HtmlGet命令获取元素文本信息。
命令名称:HtmlGet 获取网页元素信息 命令功能:获取网页元素指定属性信息 命令参数: 参数1:字符串类型,网页元素属性类型:text、html、outerHtml、value、src、 href, 偏移量
参数2:字符串类型,网页元素的字符串
例如,在下面的示例中,按钮向导论坛搜索框具有三个特征值:type、name 和 id。
我们将id特征值带入HtmlGet命令中查看结果:
Call Plugin.Web.Bind("WQM.exe")Call Plugin.Web.go("") //网站Txt=Plugin.Web.HtmlGet("value","id: scbar_txt") TracePrint正文
复制代码
成功获取到搜索框的值。
我们现在想取出下面红色区域块中的帖子标题,我们想取出一个页面中的所有这些帖子名称。
我该怎么办?
这些字符没有特征值。我们不能用特征值来找到它们。
我们可以这样做——得到整个网页的文字后,我们去找我们想要得到的标题,前后的字符。
你会发现在这个页面上,帖子标题前后不方便的字符是:“]”和“果果..”然后我们过滤掉“]”字符之前的文字,“果果。 。”下面的文字也已经过时了,这样我们就可以得到我们需要的文字了。
首先,我们需要查看以下函数:
InStr 函数描述 start 是可选的。指定每次搜索的起始位置。默认是搜索开始位置是第一个字符。如果已指定比较参数,则该参数必须存在。 string1 是必需的。要搜索的字符串。 string2 是必需的。要搜索的字符串。需要比较。指定要使用的字符串比较类型。默认为0。可以使用以下值: 0= vbBinaryCompare-执行二进制比较。 1 = vbTextCompare-执行文本比较。
中间函数描述字符串是必需的。从中返回字符的字符串表达式。如果字符串收录 Null,则返回 Null。启动所需。指定起始位置。如果设置为大于字符串中的字符数,则返回空字符串(“”)。长度是可选的。要返回的字符数。如果省略或长度超过文本中的字符数,将返回字符串中从字符串开头到结尾的所有字符。
Len 函数描述任何有效的字符串表达式字符串。如果字符串参数收录 Null,则返回 Null。 varname 任何有效的变量名。如果 varname 参数收录 Null,则返回 Null。
脚本流程:
1. 首先打开一个网站你要提取信息的地方。
2. 使用HtmlGet命令获取整个网页的文本信息并存入Txt变量
3.Filter] 符号前的文字
4. 从文本中“]”符号后面的位置取一个字符串。这里取了 100 个字符并将其放置在名为 cc 的变量中。如下图,也可以设置取80个字符和60个字符,但长度必须是“果果..”切入,因为我们会以“果果..”为基准过滤掉不需要的文本。
5. 在cc变量中找到果果。 找到它出现的位置后,截取“果果...”前的文字,就是我们需要访问的地方。
6. 最后设置叠加变量x,将每次找到的符号“]”的位置放入变量x中进行累加。累加后,第二次循环会跳过之前找到的内容,去寻找新的内容。
源代码:
Call Plugin.Web.Bind("WQM.exe")Call Plugin.Web.go("") //提取信息网站Delay 1000 //如果网页打开很慢,可以加一个延迟Txt =Plugin.Web.HtmlGet("text","") //获取网页文本 x=1Doaa = "]" //过滤符号前的文本 bb = InStr(x, Txt, aa) //返回aa变量“[”字符在整个网页文本txt中的位置 cc = Mid(Txt, bb + Len(aa), 100)//从“]”后面的位置取字符串文中的符号,这里我们取了一百个字符 dd = InStr(1, cc, "果果..")//找到cc字符串,果果...出现的位置,果果...的位置...就是我们要取的字符串长度ee = Mid(cc, 1, dd)//从文本中cc的第一个字符开始,得到结果..文本出现的位置 If Len(ee) 0然后 //判断是否取到匹配到的字符 pp = Left(ee, Len(ee)-1) //如果取到了,我们还需要做下一步处理,因为前面的ee tring取到水果出现的位置,所以水果字也取了,我们这里长度-1,去掉水果字 TracePrint ppx = InStr(x, Txt, pp) //这里做个标记,累加每次找到的符号“]”的位置,然后累加在第二次循环中,它会跳过之前找到的内容并搜索新的内容。 Else Exit Do //如果没有找到匹配,退出End IfLoop
复制代码
最终效果:
在标题之后? … 234 等字符是帖子的总回复数
获取网页图片
我们截图按钮精灵官网的图标:
我们可以查看图片的具体地址
代码如下:
Call Plugin.Web.Bind("WQM.exe")Call Plugin.Web.Go("") //打开按钮官网地址 Call Plugin.Web.Save("", "d:\123.gif")Delay 3000RunApp "mspaint.exe"&" d:\123.gif" //打开绘图工具查看保存图片的效果
复制代码
命令名称:保存 保存网页或图片命令功能:将指定网址的文件保存到本地磁盘。命令参数: 参数1:String类型,需要保存的目标Url 参数2:String类型,本地文件名
最终效果:
大家有没有注意到这里的按钮精灵官网图标是gif格式的,可以保存。如果是链接呢?
比如腾讯QQ注册页面的这种验证图片:
大家看,它的图片存储在一个链接中,所以无法获取。
地址没变,但是点进去之后又生成了一张验证图片。
所以,遇到这种链接方式的图片,还是用搜索图片的区域坐标,然后用屏幕范围截图命令保存截图:
//下面这句话将屏幕区域内的截图保存到(内存)中,以备后用。 call Plugin.ColorEx.PrintScreen(0, 0, 1024, 768)//下面这句话就是按照方法0在屏幕区域找到颜色,返回左上角第一个颜色位置坐标XY = Plugin.ColorEx.FindColor (0, 0, 1024, 768, "0000FF", 1, 0) //下面这句话是用来分割字符串的 ZB = InStr(XY, "|") //下面这句话将字符串转换成值 X = Clng(Left(XY, ZB-1)): Y = Clng(Right(XY, Len(XY)-ZB)) //发布截图信息时,请使用以下命令调用 Plugin.ColorEx.Free()