回答
你可以使用 Hamibot 的控件操作和自动化能力,在视频号点赞列表页中自动点击“感谢”按钮。以下脚本会遍历列表中的每一项,查找“感谢”控件并执行点击,同时处理滚动加载更多内容。
// 文档地址 https://docs.hamibot.com/
// 视频号点赞列表点击感谢
// 等待页面加载完成,可根据实际页面标题或控件调整
waitForPackage("com.tencent.mm");
sleep(2000);
// 循环处理,直到没有更多“感谢”按钮
var hasMore = true;
while (hasMore) {
// 收集当前屏幕中所有“感谢”按钮
var thanksButtons = text("感谢").find();
if (thanksButtons.empty()) {
// 没有找到“感谢”按钮,尝试向下滚动
if (!scrollDown()) {
hasMore = false;
break;
}
sleep(1500);
continue;
}
// 遍历点击每个“感谢”按钮
var count = 0;
while (thanksButtons.length > 0) {
var btn = thanksButtons[0];
if (btn.clickable()) {
btn.click();
sleep(800);
count++;
} else {
// 如果按钮不可点击,尝试点击其父容器
var parent = btn.parent();
if (parent && parent.clickable()) {
parent.click();
sleep(800);
count++;
}
}
// 重新获取剩余按钮,因为点击后页面可能刷新或按钮消失
thanksButtons = text("感谢").find();
}
// 如果当前屏幕没有点击任何一个按钮,尝试滚动
if (count === 0) {
if (!scrollDown()) {
hasMore = false;
}
sleep(1000);
}
}
// 辅助函数:向下滚动
function scrollDown() {
// 使用可滚动的列表控件进行滚动
var scrollable = className("android.widget.ListView").findOne(1000) ||
className("androidx.recyclerview.widget.RecyclerView").findOne(1000);
if (scrollable) {
scrollable.scrollForward();
return true;
}
// 如果找不到滚动控件,尝试手势滑动
swipe(device.width / 2, device.height * 0.7, device.width / 2, device.height * 0.3, 500);
return true;
}
使用说明
- 打开视频号点赞列表页:在脚本运行前,先手动进入视频号点赞列表,或通过
app.startActivity等方式跳转到对应页面。 - 控件定位:脚本默认使用
text("感谢")查找按钮。如果按钮文字不同,请根据实际页面修改查找条件(例如使用desc或id)。 - 滚动逻辑:若当前屏幕没有“感谢”按钮,脚本会尝试滚动列表;若滚动后仍然没有,则退出循环。
- 兼容性:代码避免使用箭头函数等 ES6 特性,确保在 Rhino 1.7.15 引擎中正常运行。
如果你需要更精确的控件定位,可以先用 Hamibot 的悬浮窗分析工具获取视频号点赞列表页的控件信息,然后替换脚本中的查找条件。
ℹ️ 内容由 AI 生成,可能不准确,请注意核实