print(config_快手) --- 配置已经读取好了 config_xxx
-- 确保配置已正确加载
if not config_快手 or not config_快手.page0 then
_toast("快手配置加载失败,请重新设置" , 3000)
print("错误: 快手配置加载失败")
return
end
-- 定义标签类型序列(使用数字索引)
local tagTypeIndex = {
[0] = "财经" ,
[1] = "团购" ,
[2] = "自定义"
}
-- 定义标签类型对应的关键词(使用相同的数字索引)
local tagTypeKeywords = {
[0] = {searchKeywords = "股票/投资/理财" , stayKeywords = "K线/A股/放量/连阳/收盘/指数/做T/涨停/量价/股票/财经/期货/成交量/炒股/追高/主力/大涨/散户/大盘/短线/股民/空仓/影线/跌停"} ,
[1] = {searchKeywords = "优惠/折扣/限时特惠" , stayKeywords = "团购测评/性价比对比/使用体验"} ,
[2] = {searchKeywords = "" , stayKeywords = ""} -- 自定义模式,用户自行输入
}
-- 使用应用名称打开快手
_toast("正在打开「快手」" , 3000)
sleep(5000)
if not runApp4name("快手") then
toast("「快手」未正常启动,请检查是否已安装!" , 3000)
print("错误: 无法打开快手应用")
return
end
-- 等待应用完全加载
_toast("等待应用加载..." , 3000)
sleep(5000)
-- 显示关键词信息
_toast("「快手」启动成功" , 3000)
sleep(5000)
-- 获取当前选择的标签类型
local currentTagType = tonumber(config_快手.page0.built_tags) or 0
print("当前选择的标签类型:" , tagTypeIndex[currentTagType])
-- 获取对应的关键词
local searchKeywords = config_快手.page0.search_keywords
local stayKeywords = config_快手.page0.stay_keywords
-- 如果关键词仍然是默认值,则使用预设值
if (searchKeywords == "输入内容" or searchKeywords == "") and tagTypeKeywords[currentTagType] then
searchKeywords = tagTypeKeywords[currentTagType].searchKeywords
end
if (stayKeywords == "输入内容" or stayKeywords == "") and tagTypeKeywords[currentTagType] then
stayKeywords = tagTypeKeywords[currentTagType].stayKeywords
end
print("搜索关键词:" , searchKeywords)
print("停留关键词:" , stayKeywords)
_toast("已加载「" .. tagTypeIndex[currentTagType] .. "」标签的关键词" , 3000)
sleep(3000)
-- 检测精选页
local function 检测精选页()
for attempt = 1 , 10 do
_toast("正在检测精选页(第 " .. attempt .. " 次)" , 3000)
sleep(3000)
print(string.format("第 %d 次尝试检测精选页" , attempt))
-- 使用文字识别替代图像识别
OCRegion(0.0 , 0.94 , 1.0 , 1.0)
print(that.string(" "))
-- 查找"精选"文字
local foundItem = that.find("精选") or that.find({"首页" , "精选" , "消息" , "我"} , true)
if foundItem then
local intx , inty = foundItem.x1 , foundItem.y1
-- 使用多点比色来检测是否选中
local x , y = foundItem.x1 , foundItem.y1
local isSelected = findMultiColor(x , y , x + 50 , y + 20 ,
"FFFFFF-101010" ,
"5|8|FFFFFF-101010|10|15|FFFFFF-101010" , 0 , 0.9)
if isSelected > - 1 then
-- 找到白色特征,说明在精选页
print("检测成功:当前已在精选页")
_toast("当前页面为精选页" , 3000)
return true
else
-- 没有找到白色特征,需要点击
HidTap(intx , inty , {show = true , text = "点击精选"})
print("需要切换到精选页")
_toast("切换到精选页" , 3000)
return true
end
else
print(string.format("第 %d 次未检测到精选页,执行返回操作" , attempt))
local screenWidth , screenHeight = getDisplaySize()
local returnX = rnd(30 , 600)
local returnY = rnd(screenHeight * 0.3 , screenHeight * 0.8)
print(string.format("HID返回随机坐标: X=%d, Y=%d" , returnX , returnY))
HID返回()
sleep(3000)
end
end
_toast("多次尝试后仍未能进入精选页" , 3000)
print("错误:无法进入精选页,脚本终止")
return false
end
-- 确保在精选页才继续执行
if not 检测精选页() then
return
end
-- 检测直播间
local function 检测直播间()
if pic_sobel({0 , 0.62 , 1 , 1 , "ks_直播间.png" , 0.9}) or
pic_sobel({0 , 0.62 , 1 , 1 , "ks_直播间1.png" , 0.9}) then
return true
end
return false
end
-- 主任务循环
_toast("开始执行快手任务" , 3000)
for i = 1 , 1000 do
print(string.format("快手任务执行中... 第 %d 次循环" , i))
local isLiveRoom = 检测直播间()
if isLiveRoom then
--[===[ print("当前视频类型:标签广告标识直播间")
-- TODO: 在此调用或编写普通视频任务逻辑,比如:滑动、点赞、评论等
print("执行标签广告标识直播间相关操作...")
else
print("当前视频类型:标签广告标识视频")
-- TODO: 在此调用或编写普通视频任务逻辑,比如:滑动、点赞、评论等
print("执行标签广告标识视频相关操作...")
else
print("当前视频类型:标签直播间")
-- TODO: 在此调用或编写普通视频任务逻辑,比如:滑动、点赞、评论等
print("执行标签直播间相关操作...")
else
print("当前视频类型:标签视频")
-- TODO: 在此调用或编写普通视频任务逻辑,比如:滑动、点赞、评论等
print("执行标签视频相关操作...")
else]===]
print("当前视频类型:直播间")
-- TODO: 在此调用或编写直播间任务逻辑,比如:点赞、送礼、关注等
print("执行直播间相关操作...")
else
print("当前视频类型:普通视频")
-- TODO: 在此调用或编写普通视频任务逻辑,比如:滑动、点赞、评论等
print("执行普通视频相关操作...")
end
sleep(1000) -- 每次循环间隔,可根据需要调整
end
-- 任务结束
_toast("所有任务执行完成" , 3000)
print("所有任务执行完毕")
用户在执行代码中选择标签类型序列时,代码中预设search_keywords和stay_keywords值没有自动填入到前面UI中。
最新发布