优化-抽出执行任务

This commit is contained in:
wangzhengzhen
2024-12-30 17:20:05 +08:00
parent d0e86cb4e2
commit 505e803142
2 changed files with 54 additions and 103 deletions

View File

@@ -33,6 +33,26 @@ class _App:
def open_function(self):
pass
class Task:
def __init__(self, name, rule, func):
self.name = name
self.rule = rule
self.func = func
@classmethod
def watch_video(cls, name, rule, device):
return cls(name, rule, lambda : device.swipe_up(150, 50))
@classmethod
def read_book(cls, name, rule, device):
return cls(name, rule, lambda : device.swipe_left(300, 100))
def start(self):
print("开始执行任务:{}".format(self.name))
_exec(self.rule, self.func, self.name)
print("任务{}执行完毕".format(self.name))
pass
def _exec(rule, func = [], log_prefix = "执行任务"):
factor = getattr(rule, "factor")
if hasattr(rule, "num"):
@@ -78,87 +98,35 @@ class ToutiaoLite(_App):
print("开宝箱...")
print("开宝箱完成...")
def watch_video(self, rule):
print("开始看视频任务...")
_exec(rule, lambda : self.device.swipe_up(150, 50), "看视频中")
print("看视频任务完成")
def watch_ad(self, rule):
print("开始看广告任务...")
# 0.3
def func():
button = ui.Button(240, 450, 850, 920)
point = button.get_point()
self.device.back()
self.device.back() # 防止自动进入直播界面
self.device.click(point)
_exec(rule, lambda : func(), "看广告中")
print("看广告任务完成...")
# 看广告
def func_ad(self):
button = ui.Button(240, 450, 850, 920)
point = button.get_point()
self.device.back()
self.device.back() # 防止自动进入直播界面
self.device.click(point)
class DouyinLite(_App):
def __init__(self, device):
_App.__init__(self, "抖音极速版")
self.device = device
def watch_video(self, rule):
print("开始看视频任务...")
_exec(rule, lambda : self.device.swipe_up(120, 80), "看视频中")
print("看视频任务完成")
class KuaishouLite(_App):
def __init__(self, device):
_App.__init__(self, "快手极速版")
self.device = device
def watch_video(self, rule):
print("开始看视频任务...")
_exec(rule, lambda : self.device.swipe_up(120, 80), "看视频中")
print("看视频任务完成")
def read_book(self, rule):
print("开始看书任务...")
_exec(rule, lambda : self.device.swipe_left(300, 100), "看书中")
print("看书任务完成")
class TomatoListen(_App):
def __init__(self, device):
_App.__init__(self, "番茄畅听")
self.device = device
def watch_video(self, rule):
print("开始看视频任务...")
_exec(rule, lambda : self.device.swipe_up(120, 80), "看视频中")
print("看视频任务完成")
def read_book(self, rule):
print("开始看书任务...")
_exec(rule, lambda : self.device.swipe_left(300, 100), "看书中")
print("看书任务完成")
class TomatoFiction(_App):
def __init__(self, device):
_App.__init__(self, "番茄小说")
self.device = device
def read_book(self, rule):
print("开始看书任务...")
_exec(rule, lambda : self.device.swipe_left(300, 100), "看书中")
print("看书任务完成")
def watch_video(self, rule):
print("开始看视频任务...")
_exec(rule, lambda : self.device.swipe_up(120, 80), "看视频中")
print("看视频任务完成")
class Alipay(_App):
def __init__(self, device):
_App.__init__(self, "支付宝")
self.device = device
def watch_video(self, rule):
print("开始看视频任务...")
_exec(rule, lambda : self.device.swipe_up(120, 80), "看视频中")
print("看视频任务完成")