建网站做站长:手把手教你编写抖音主动评论脚本
本文摘要: 查找大众号:暗网黑客可领全套网络安全课程、配套攻防靶场0×00 前言我的TodoList添加了一项,Appium | Airtest 抖音主动评论、创意评论(所有评论/前一百评论男女占比 | 所有评论词云),记载了当时的一个主见。Appium和Airtest

查找大众号:暗网黑客

可领全套网络安全课程、配套攻防靶场






0×00 前言



我的TodoList添加了一项,Appium | Airtest 抖音主动评论、创意评论(所有评论/前一百评论男女占比 | 所有评论词云),记载了当时的一个主见。

Appium和Airtest都可用于移动端主动化测试,Airtest是网易家的

想做评论词云是因为在这之前用Appium写了一个爬个人微信朋友圈词云图的程序(见图1)

同时Airtest操作更简略,也在考虑的规模

再后来,一直未施行,主要是觉得得用手机连着电脑,不能随时随地操作,就放置了。

近段时间因为工作时的一个主见,又把这事提起来了。

事务场景比较特殊,可能会触及版权问题,就不细说,简言之

想完成某注册机主动生成注册码功用,继而触摸到了按键精灵

按键精灵很早就存在,也很早就有所耳闻,但一直未实地触摸,刚好借这个时机触摸一下。

用按键精灵PC版完成了注册机主动生成注册码功用,在完成的过程当中触摸到了按键精灵手机版,坐井观天了

一个神奇的存在,立马就想到了可以用它先完成个简略的抖音主动评论功用吧。

前言有点啰嗦了。。。,喏,这个是微信朋友圈词云图,图1

演示视频:


https://v.qq.com/x/page/h0925ibm20c.html

0×01 导语


过了前言是导语啊,看了这篇文章,你可以了解到哪些内容:

1. 某注册机主动生成注册码——按键精灵PC版脚本编写

2. 抖音主动评论——按键精灵手机版使用及脚本编写

3. Lua插件使用及编写

4. 拓展功用,看结束Tips

5. 非技能工作者可以了解到,很多功用体现,没有那么杂乱,程序可以替代手工

6. ++

0×02 某注册机主动生成注册码



不是本文重点,会简略概过(Kuo)。

按键精灵官网下载地点http://download.myanjian.com/,可下载按键精灵PC版,安卓版,按键精灵手机助手。


此处下载装置按键精灵PC端,PC版官网:


脚本编写界面(需要留意赤色箭头指向的几个当地,了解一下相关功用项):


学习方式:按键精灵使用的是Q言语,在VBScript言语基础上开展来的

假如对VBScript言语有了解更好一些,没有了解也不妨

留意上图脚本编写界面中的根本命令和悉数命令标签

基础命令标签可通过点击主动生成代码,悉数命令标签大部分方法通过代入参数也可主动生成代码

把根本命令和悉数命令相关方法看一遍,看的过程当中就会对要完成的功用有个大约的构思

清楚会用到哪些方法,编写脚本过程当中再去官网、其它当地了解下相关常识点,根本就入门了。

小Tips:

1. 界面标签页可编写窗体界面,包括各种控件。

2. 发布菜单可导出脚本,脚本依赖PC版运转环境;可制造按键小精灵,按键小精灵可生成exe程序,脱离PC版运转环境独立运转。

3. 善用命令协助文档和命令查找功用

某注册机主动生成注册码,主要用到了Window窗口插件里的方法

同时也用到了抓抓功用,通过动态找窗口句柄的方式完成详细的功用,Plugin.Window.FindEx( )函数有坑,需要在实践过程当中了解参数2子窗口句柄的用法。

其它没有介绍到的,如有疑问,欢迎交流。

某注册机主动生成注册码代码示例(如有更好完成方式,欢迎辅导,谢谢):
Dim MachineCode, SerialNum, RegistCode//打开注册机Call RunApp("D:\SoftWare\keygen.exe")Delay 500//接收机器码Rem InputMachMachineCode = InputBox("请输入机器码:", "输入注册码")If MachineCode = "" ThenGoto InputMachEnd IfTracePrint "MachineCode: " & MachineCode //查找窗口类名("#32770")或者标题("Keymaker"),返回找到的句柄HwndHwnd = Plugin.Window.Find("#32770", "Keymaker")//依据父窗口句柄(Hwnd)查找子窗口匹配类名("Edit")或者匹配标题(""),返回找到匹配的句柄MachineIdExMachineIdEx = Plugin.Window.FindEx(Hwnd, 0, "Edit", 0)TracePrint "MachineIdEx: " & MachineIdEx//修正Keymaker标题Call Plugin.Window.SetText(Hwnd,"注册码主动生成")//主动输入机器码Call Plugin.Window.SendString(MachineIdEx, MachineCode)//依据父窗口句柄(Hwnd)查找子窗口匹配类名("Button")或者匹配标题("&Generate"),返回找到匹配的句柄GenerateExGenerateEx = Plugin.Window.FindEx(Hwnd, 0, "Button", "&Generate")TracePrint "GenerateEx: " & GenerateEx//按下Generate按钮,生成注册码Call Plugin.Window.SendKeyDown(GenerateEx, 13)//依据父窗口句柄(Hwnd)查找子窗口匹配类名("Static")或者匹配标题("Your machine ID:"),返回找到匹配的句柄MachineIdLabelExMachineIdLabelEx = Plugin.Window.FindEx(Hwnd, 0, "Static", "Your machine ID:")TracePrint "MachineIdLabelEx: " & MachineIdLabelEx//依据父窗口句柄(Hwnd)查找子窗口匹配类名("Edit")或者匹配标题(""),返回找到匹配的句柄SerialNumExSerialNumEx = Plugin.Window.FindEx(Hwnd, MachineIdLabelEx, "Edit", 0)TracePrint "SerialNumEx: " & SerialNumEx//获取序列号SerialNum = Plugin.Window.GetTextEx(SerialNumEx, 1)TracePrint "SerialNum: " & SerialNum//依据父窗口句柄(Hwnd)查找子窗口匹配类名("Button")或者匹配标题(""),返回找到匹配的句柄ButtonFrameExButtonFrameEx = Plugin.Window.FindEx(Hwnd, 0, "Button", 0)TracePrint "ButtonFrameEx: " & ButtonFrameEx//依据父窗口句柄(Hwnd)查找子窗口匹配类名("Edit")或者匹配标题(""),返回找到匹配的句柄RegistCodeExRegistCodeEx = Plugin.Window.FindEx(Hwnd, ButtonFrameEx, "Edit", 0)TracePrint "RegistCodeEx: " & RegistCodeExRegistCode = Plugin.Window.GetTextEx(RegistCodeEx, 1)TracePrint "RegistCode: " & RegistCodeMsgBox "序列号:" & SerialNum & " 注册码:" & RegistCode//复制序列号和注册码到剪切板Call Plugin.Sys.SetCLB("机器码:" & MachineCode & " 序列号:" & SerialNum & " 注册码:" & RegistCode)MsgBox "注册码信息已复制到剪切板"Delay 1000//完全关闭窗口(退出程序)Call Plugin.Window.CloseEx(Hwnd)

第一版运转示例:




插播一条:文末有视频收取方式


0×03 抖音主动评论——古诗词版



望文生义,评论的内容是古诗词版的,为嘛,我是文学社社长[/手动滑稽脸]

首要就想到来点清流版的。演示视频里用到的是搜狗输入法小汪版,评论内容更万金油一些,嗯。

先下载装置上述提到的按键精灵手机助手,敲黑板,手机助手编写的脚本安卓手机和苹果手机都能够使用,前置条件是安卓需要ROOT,苹果需要越狱。

脚本上可能会有一些不同,看详细的方法两个端是否都支撑,安卓支撑更全一些。

本文演示手机是苹果越狱机,机型:iPhone 6S Plus,安卓机需要各位看官自行尝试。

除了在电脑上装置按键精灵手机助手,还需要在苹果越狱机上装置按键精灵越狱插件

按键精灵Cydia官方源地点:http://apt.mobileanjian.com

在Cydia中添加按键精灵官方源之后

按iOS对应体系版本装置对应的按键精灵插件:


之背工机通过数据线连接电脑,打开按键精灵手机助手,即可连接上手机编写脚本。

手机助手编写脚本界面(需要留意赤色箭头指向的几个当地,了解一下相关功用项):


按键精灵手机助手学习方法:和PC版类似,先熟悉界面、菜单功用项,手机助手操作方式,移动端按键精灵操作方式

最重要熟悉根本命令和悉数命令,悉数看完一遍

即可对要完成的功用有一个大约的构思,明确会用到哪些命令方法。

抖音主动评论脚本编写思路(流程):

1. 按下Home键,然后主动打开抖音App

根本命令——触摸命令——按键 Home——刺进,即可生成按下Home键的代码,

根本命令——其它命令——应用程序 启动——包名找到抖音,即可生成打开抖音App代码

如下(留意延时2秒,防止RunApp闪退,实践得知):
//按下Home键KeyPress "Home"//延时2秒,防止RunApp闪退Delay 2000//打开抖音RunApp "com.ss.iphone.ugc.Aweme"

2. 模仿上滑切换视频,随机延时模仿人为观看视频

根本命令——从屏幕x1,y1坐标滑动到x2,y2坐标,可通过两组坐标模仿某个方向的滑动操作,坐标点需要通过屏幕分辨率核算,两组坐标x轴相同,y轴从小到大即为上滑操作。

根本命令——设备命令——得到屏幕宽度、得到屏幕高度,即可得到屏幕分辨率,宽×高,

根本命令——其它命令——延时x毫秒时间,即可延时执行,随机延时需核算完成

整理代码如下(TracePrint方法,控制台调试输出):

3. 找评论按钮,点击评论按钮

找评论按钮需要用到抓抓菜单,找到评论按钮在屏幕中的坐标点:


先点左上角截屏

即可加载其时抖音视频屏幕截图,滑动滚轴找到评论按钮,鼠标放到中心点

显示的坐标点即为评论按钮的坐标点,

问:这里是否有其它不依赖坐标点的方法,有,了解一下以图搜图功用

需要截取评论按钮Icon,放到附件里,通过代码在其时屏幕中查找评论按钮截图的方位。

根本命令——短暂点击屏幕——代入x,y坐标点,即可点击屏幕某一坐标

整理代码:
//查找并点击评论按钮坐标,暂定1150×1440Tap 1150, 1440

点击评论按钮后示例:


4. 点击左下角评论输入框,调接口获取评论内容,主动输入评论内容,点发送按钮

4-1. 依照上述找评论按钮方法,找评论输入框大约坐标区域

因为是在屏幕底部偏左区域(见上图赤色圈注),故通过屏幕高度核算得出大约坐标点:
//点击评论框Tap 80, screenY - 80

评论框打开示例(赤色圈注区域为输入评论内容区域,已主动获取焦点):


4-2. 调接口获取评论内容,这里需要用到Get或Post方法

请求接口获取返回数据,悉数命令——Url网络操作——以Get|Post方式拜访地点

即可满足普通不需要Cookie的接口,需携带Cookie,请参考:悉数命令——插件命令——ShanHai 山海插件命令v2.5——Get|Post拜访HTTP资源(附带cookie),或其它插件。

这里找到了一个古诗词的接口,https://api.77sec.cn/yiyan/api.php,拜访即可随时返回一句古诗词,例如:
document.write("往者不可谏,来着犹可追。——《论语·微子》");

带有js代码,需提取文字部分

有两种方法,使用正则提取,或者使用字符串替换,替换document.write(“和”);为空。

调接口示例:
/\("(.+?)"\)/g

使用字符串替换提取古诗词内容:
//引用插件,按键精灵手机助手自带,对应目录"按键精灵\按键精灵手机助手\Plugin\ShanHai.lua"Import "shanhai.lua"Dim regexArr = shanhai.RegexFind(html,"%(\"(.+)\"%)")For Each v In regexArr    content = vNextTracePrint content

使用正则提取,这个当地需留意一下

可以了解到Lua插件使用、Lua插件正则和普通正则的差异、Lua插件编写方法等。

普通正则提取文字:
/\("(.+?)"\)/g

使用ShanHai 山海插件命令v2.5——RegexFind全局正则匹配提取:
//引用插件,按键精灵手机助手自带,对应目录"按键精灵\按键精灵手机助手\Plugin\ShanHai.lua"Import "shanhai.lua"Dim regexArr = shanhai.RegexFind(html,"%(\"(.+)\"%)")For Each v In regexArr    content = vNextTracePrint content

刚开始认为shanhai.RegexFind( )正则参数传入普通的正则表达式即可,调试无成果

然后看了ShanHai.lua插件源码,发现需要使用Lua正则表达式

继而学习了解了其表达式写法,参考lua高级-正则表达式

小Tip:假如是自己写的插件,脚本代码中怎么引用?

PC端和手机端放到对应的Plugin目录下,Import引用即可。

4-3. 主动输入评论内容,依照4-1找到的评论框打开赤色圈注区域,已主动获取焦点,使用InputText( )方法即可完成主动输入评论内容:
//输入评论内容InputText content


4-4. 点发送按钮,此处用的是搜狗输入法,发送按钮在右下角,可通过屏幕分辨率算坐标,也可用抓抓功用取中心坐标点,此处坐标暂定1107×2125:
//点击搜狗输入法发送按钮,坐标暂定1107×2125Tap 1107, 2125

5. 关闭屏幕区域,以便进行下一次操作

有两种关闭方式:

第一种点屏幕区域右上角×号

第二种点评论区域与屏幕顶部间隔区域(会误点告诉音讯,不引荐)
//关闭评论,点击评论区右上角×号,坐标暂定1169×655Tap 1169, 655或//关闭评论,点屏幕上顶部即可Tap screenX \ 2, screenY * 0.1 \ 1

通过以上操作即可完成抖音短视频主动评论功用

每步操作可通过点击调试菜单在手机上运转调试

剩下的就是进行循环操作。

0×04 按键精灵越狱插件使用



按键精灵手机助手每次预览界面、调试运转脚本时会主动同步界面、代码到手机端按键精灵App里

默许在底部脚本——未分类文件夹里,打开后即可看到手机助手编写的脚本:


点击脚本即可进入到脚本配置界面:


脚本名称和使用说明可在手机助手——脚本——脚本属性里设置,我这个简略,使用说明就一句话,”老省劲了,开启后别着手机就成”。

脚本设置相关配置项需要通过手机助手——界面进行设计,配置项变量可在代码中通过ReadUIConfig(界面配置项名称, 默许值)获取。

手机助手界面(见上图预览效果):


取评论次数配置项代码示例:
Dim commentTimescommentTimes = CInt(ReadUIConfig("commentTimes", 10)) //CInt() 尝试将表达式转换为短整数型,如未取到值,默许10次

设置后点加载按钮即可运转脚本

有两种控制方式:

一种是按键精灵悬宝塔标控制

一种是音量加减控制,加运转,减停止运转,可在按键精灵App设置菜单里进行设置。

脚本配置界面图例右上角修改按钮可在手机上查看脚本内容,并可实时修正保存运转,即可独立运转。

0×05 抖音主动评论——古诗词版脚本源码



源码中还有很多上述没有提到的当地

包括不限于基础语法,循环操作,封装方法等,可通过代码注释做一了解。
//导入ShanHai 山海插件命令v2.5插件Import "shanhai.lua"//获取屏幕分辨率Dim screenX, screenYscreenX = GetscreenX()screenY = GetscreenY()//调试输出成果,例:1242×2208TracePrint "屏幕分辨率: " & screenX & "×" & screenY//按下Home键KeyPress "Home"//延时2秒,防止RunApp闪退Delay 2000//打开抖音ShowMsg "打开抖音", screenX, screenYRunApp "com.ss.iphone.ugc.Aweme"Delay 5000//获取界面设置的评论次数Dim contentDim i, commentTimescommentTimes = CInt(ReadUIConfig("commentTimes", 10)) //CInt() 尝试将表达式转换为短整数型 ShowMsg "评论次数配置为" & commentTimes & "次", screenX, screenYFor i = 1 To commentTimes	//上划切换视频	SwipeUp screenX, screenY	TracePrint "第" & i & "次评论"	ShowMsg "第" & i & "次评论", screenX, screenY	//获取评论内容	content = GetPoetry()	ShowMessage "评论内容:" & content, 2000, screenX * 0.05 \ 1, screenY * 0.75 \ 1	//主动评论	Comment screenX, screenY, contentNext//--------------------------------------------------------------------------------------------//上划切换视频Function SwipeUp(screenX, screenY)    //整除运算符核算从屏幕中心底部划到顶部,划动延时为30毫秒	Swipe screenX \ 2, screenY * 0.65 \ 1, screenX \ 2, screenY * 0.35 \ 1, 30	//调试输出成果,例:621 1766 621 442 30	TracePrint(screenX \ 2, screenY * 0.8 \ 1, screenX \ 2, screenY * 0.2 \ 1, 30)	//随机延时3到15秒	DelayRnd(3, 15)End Function//主动评论Function Comment(screenX, screenY, content)	//查找并点击评论按钮坐标,暂定1150×1440	Tap 1150, 1440	DelayRnd(3, 8)	//点击评论框	Tap 80, screenY - 80	//输入评论内容	InputText content	Delay 1000	//点击搜狗输入法发送按钮,坐标暂定1107×2125	Tap 1107, 2125	Delay 2000	//关闭评论,点屏幕上顶部即可	//Tap screenX \ 2, screenY * 0.1 \ 1	//关闭评论,点击评论区右上角×号,坐标暂定1169×655    Tap 1169, 655	Delay 1000End Function//获取一句随机古诗词作为评论内容Function GetPoetry()	Dim html, content	// 返回成果示例: document.write("安不忘危,思则有备,防患未然。——《左传》");	html = URL.Get("https://api.77sec.cn/yiyan/api.php")	TracePrint html//	content = Replace(html, "document.write(""", "")//	content = Replace(content, """);", "")	Dim regexArr = shanhai.RegexFind(html,"%(\"(.+)\"%)")	For Each v In regexArr		content = v	Next	TracePrint content	GetPoetry = contentEnd Function//生成指定规模随机数Function GenRnd(minVal, maxVal)	GenRnd = Int((maxVal - minVal + 1) * Rnd() + minVal)End Function//随机延时Function DelayRnd(minSec, maxSec)	Dim randTime	randTime = GenRnd(minSec, maxSec)	TracePrint "随机延时" & randTime & "秒"	Delay randTime * 1000End Function//重写ShowMessageFunction ShowMsg(msg, screenX, screenY)	Dim intX, intY	intX = screenX \ 2 - 85	intY = screenY * 0.75 \ 1	TracePrint "提示音讯坐标: " & intX & "×" & intY	ShowMessage msg, 2000, intX, intYEnd Function


0×06 Tips



OK,各位看官,相信通过上述一番文字图片轰炸(LuoSuo),应该可以上手按键精灵做一些事情了吧。

当然我触摸的也只是皮裘,学无止境,当有一个新主见时,可能会再触摸到更多的东西。

除了上述完成的抖音主动评论,还可以做哪些事情呢,我简略列几项,不细说,假如你有这方面需求,很快可以想到。

1. 按键精灵手机版是可以操作很多基础功用的,打手机、读发短信等等,所以,脚本源码还好,用他人封装好的不一定是安全的

2. 可以完成批量添加、删除、清空联络人,详细用处自己想

3. 插件编写,看一下按键精灵自带的插件源码,就能够写自界说插件完成更强壮的功用

4. 仍是++

作者:冰海

转载自:https://www.freebuf.com/geek/213050.html


点击下方<了解更多>直接跳转至上述视频教程页面

免费观看更多黑客浸透实战视频


【免责声明】本文仅代表作者或发布者个人观念,不代表(www.lmnkf.cn)及其所属公司官方发声,对文章观念有疑义请先联络作者或发布者自己修正,若内容触及侵权或违法信息,请先联络发布者或作者删除,若需我们协助请联络平台管理员,Emailcxb5918(本平台不支撑其他投诉反馈渠道,谢谢合作)。若需要学习以上相关常识请到巨推学院观看视频教程,网站地址www.tsllg.cn。

相关内容