php登录抓取网页指定内容(金猪游戏辅助脚本,脚本教学脚本)
优采云 发布时间: 2021-11-05 01:21php登录抓取网页指定内容(金猪游戏辅助脚本,脚本教学脚本)
金猪脚本(原飞猪脚本)主要以按钮精灵教学为主,涉及UiBot、Python、Lua等脚本编程语言,教学包括自动办公脚本、游戏辅助脚本、引流脚本、网页脚本、 Android脚本、IOS脚本、注册脚本、喜欢脚本、阅读脚本和网赚脚本等领域。想制作脚本学习按钮精灵的朋友可以加按钮精灵学习交流群:554127455 学习路上不再孤单,金猪脚本与你一起成长。
最近遇到同学反馈,网页上没有特征值的文本元素不知道怎么获取。而且,我不知道如何获取和保存网页上出现的图片。
获取网页的指定文本:
目前key支持的元素的特征值有:frame(帧)、id(唯一标识)、tag(标签)、type(类型)、txt(文本)、value(特征)、index(索引)、 name(name) 只有具有这些特征值的元素才能直接使用HtmlGet命令获取元素文本信息。
命令名称:HtmlGet 获取网页元素的信息 命令功能:获取网页元素的指定属性信息 命令参数: 参数1:字符串类型,网页元素属性类型:text、html、outerHtml、value、 src、href、偏移量
参数2:String类型,网页元素的字符串
例如,在下面的示例中,按钮向导论坛搜索框具有三个特征值:type、name 和 id。
我们将id特征值带入HtmlGet命令中查看结果:
调用 Plugin.Web.Bind("WQM.exe")Call Plugin.Web.go("") //网站Txt=Plugin.Web.HtmlGet("value","id:scbar_txt 提取信息" ) 跟踪打印文本
复制代码
成功获取到搜索框的值。
我们现在要取出下面红色区域块中的帖子标题,我们想要取出一个页面中的所有帖子名称。
我该怎么办?
这些字符没有特征值。我们不能使用特征值来找到它们。
我们可以这样做——获取整个网页的文本后,去我们想要获取的标题,不变字符。
你会发现在这个页面上,帖子标题前后不方便的字符是:“]”和“果果..”然后我们过滤掉“]”字符前面的文字,后面的文字“果果..”太多了,好不容易拿到需要的文字。
首先,我们需要回顾以下函数:
InStr 函数描述了可选的开始。指定每次搜索的起始位置。默认是搜索开始位置是第一个字符。如果已指定比较参数,则该参数必须存在。string1 是必需的。要搜索的字符串。string2 是必需的。要搜索的字符串。需要比较。指定要使用的字符串比较的类型。默认为0。可以使用以下值: 0= vbBinaryCompare-执行二进制比较。1 = vbTextCompare-执行文本比较。
Mid 函数描述所需的字符串。从中返回字符的字符串表达式。如果字符串收录 Null,则返回 Null。启动所需。指定起始位置。如果设置为大于字符串中的字符数,则返回空字符串(“”)。长度是可选的。要返回的字符数。如果省略或长度超过文本中的字符数,则将返回字符串中从开始到字符串结尾的所有字符。
Len 函数描述任何有效的字符串表达式字符串。如果字符串参数收录 Null,则返回 Null。varname 任何有效的变量名。如果 varname 参数收录 Null,则返回 Null。
脚本流程:
1. 先打开一个网站来提取信息。
2. 使用HtmlGet命令获取整个网页的文本信息并保存在Txt变量中
3. Filter] 符号前的文字
4. 从文本中“]”符号后面的位置取字符串。这里取了一百个字符并将其放置在名为 cc 的变量中。如下图,也可以设置取80个字符和60个字符,但长度必须是“果果..”切入,因为我们会以“果果..”为基准过滤掉不需要的文本 。
5. 在cc变量中找到果果。. 找到它出现的位置后,截取“果果...”之前的文字,就是我们需要访问的地方。
6. 最后设置叠加变量x,将每次找到的符号“]”的位置放入变量x中进行累加。累加后,第二次循环会跳过之前找到的内容。搜索新内容。
源代码:
我们这里有长度-1,去掉水果字符 TracePrint ppx = InStr(x, Txt, pp) // 在这里做个标记,把每次找到的符号“]”的位置相加,累加后,第二个循环将跳过先前找到的内容并搜索新内容。Else Exit Do //如果没有找到匹配,退出End IfLoop 我们这里有长度-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" //打开绘图工具,查看保存图片的效果
复制代码
命令名称:保存 保存网页或图片 命令功能:将指定 URL 的文件保存到本地磁盘 命令参数: 参数 1:字符串类型,需要保存的目标 Url 参数 2:字符串类型,本地文件名
最终效果:
大家有没有注意到这里的按钮精灵官网图标是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()