新增日志,修改个别国家打招呼发中文问题
This commit is contained in:
@@ -147,22 +147,23 @@ class ControlUtils(object):
|
|||||||
print(e)
|
print(e)
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# 点赞
|
# 点赞
|
||||||
@classmethod
|
@classmethod
|
||||||
def clickLike(cls, session: Client, udid):
|
def clickLike(cls, session: Client, udid):
|
||||||
scale = session.scale
|
try:
|
||||||
x, y = AiUtils.findImageInScreen("add", udid)
|
scale = session.scale
|
||||||
print(x, y)
|
x, y = AiUtils.findImageInScreen("add", udid)
|
||||||
if x > -1:
|
print(x, y)
|
||||||
LogManager.info("点赞了", udid)
|
if x > -1:
|
||||||
session.click(x // scale, y // scale + 50)
|
LogManager.method_info("点赞了", "关注打招呼", udid)
|
||||||
return True
|
session.click(x // scale, y // scale + 50)
|
||||||
else:
|
return True
|
||||||
LogManager.info("没有找到目标", udid)
|
else:
|
||||||
return False
|
LogManager.method_info("没有找到目标", "关注打招呼", udid)
|
||||||
|
return False
|
||||||
|
except Exception as e:
|
||||||
|
LogManager.method_info(f"点赞出现异常,异常的原因:{e}", "关注打招呼", udid)
|
||||||
|
raise False
|
||||||
|
|
||||||
# 点击搜索
|
# 点击搜索
|
||||||
@classmethod
|
@classmethod
|
||||||
|
|||||||
@@ -203,7 +203,7 @@ class CountryLanguageMapper:
|
|||||||
"塞尔维亚": "sr",
|
"塞尔维亚": "sr",
|
||||||
"塞舌尔": "fr",
|
"塞舌尔": "fr",
|
||||||
"塞拉利昂": "en",
|
"塞拉利昂": "en",
|
||||||
"新加坡": "zh-CN",
|
"新加坡": "en",
|
||||||
"荷属圣马丁": "nl",
|
"荷属圣马丁": "nl",
|
||||||
"斯洛伐克": "sk",
|
"斯洛伐克": "sk",
|
||||||
"斯洛文尼亚": "sl",
|
"斯洛文尼亚": "sl",
|
||||||
|
|||||||
@@ -226,7 +226,6 @@ class ScriptManager():
|
|||||||
self.comment_flow(filePath, session, udid, recomend_cx, recomend_cy)
|
self.comment_flow(filePath, session, udid, recomend_cx, recomend_cy)
|
||||||
event.wait(timeout=2)
|
event.wait(timeout=2)
|
||||||
|
|
||||||
|
|
||||||
home = AiUtils.findHomeButton(session)
|
home = AiUtils.findHomeButton(session)
|
||||||
if not home:
|
if not home:
|
||||||
raise Exception("没有找到首页按钮,重置")
|
raise Exception("没有找到首页按钮,重置")
|
||||||
@@ -490,7 +489,8 @@ class ScriptManager():
|
|||||||
state = result.get("state", 0)
|
state = result.get("state", 0)
|
||||||
|
|
||||||
if not state:
|
if not state:
|
||||||
LogManager.method_info(f"当前主播的状态是:{state} 不通行,取出数据移到列表尾部 继续下一个", "关注打招呼",
|
LogManager.method_info(f"当前主播的状态是:{state} 不通行,取出数据移到列表尾部 继续下一个",
|
||||||
|
"关注打招呼",
|
||||||
udid)
|
udid)
|
||||||
AiUtils.pop_aclist_first(mode="move")
|
AiUtils.pop_aclist_first(mode="move")
|
||||||
continue
|
continue
|
||||||
@@ -540,7 +540,6 @@ class ScriptManager():
|
|||||||
LogManager.method_info(f"输入主播id:{aid or '暂无数据'}", "关注打招呼", udid)
|
LogManager.method_info(f"输入主播id:{aid or '暂无数据'}", "关注打招呼", udid)
|
||||||
input.set_text(f"{aid or '暂无数据'}\n")
|
input.set_text(f"{aid or '暂无数据'}\n")
|
||||||
|
|
||||||
|
|
||||||
# 定位 "关注" 按钮 通过关注按钮的位置点击主播首页
|
# 定位 "关注" 按钮 通过关注按钮的位置点击主播首页
|
||||||
|
|
||||||
session.appium_settings({"snapshotMaxDepth": 25})
|
session.appium_settings({"snapshotMaxDepth": 25})
|
||||||
@@ -571,12 +570,17 @@ class ScriptManager():
|
|||||||
|
|
||||||
cellClickResult, workCount = ControlUtils.clickFirstVideoFromDetailPage(session)
|
cellClickResult, workCount = ControlUtils.clickFirstVideoFromDetailPage(session)
|
||||||
|
|
||||||
|
LogManager.method_info(f"是否有视频:{cellClickResult} 作品的数量为:{workCount}", "关注打招呼", udid)
|
||||||
|
|
||||||
LogManager.method_info(f"点击第一个视频", "关注打招呼", udid)
|
LogManager.method_info(f"点击第一个视频", "关注打招呼", udid)
|
||||||
|
|
||||||
event.wait(timeout=2)
|
event.wait(timeout=2)
|
||||||
|
|
||||||
# 观看主播视频
|
# 观看主播视频
|
||||||
def viewAnchorVideo(workCount):
|
def viewAnchorVideo(workCount):
|
||||||
print("开始查看视频,并且重新调整查询深度")
|
print("开始查看视频,并且重新调整查询深度")
|
||||||
|
LogManager.method_info("开始查看视频,调整节点深度为5", "关注打招呼", udid)
|
||||||
|
|
||||||
session.appium_settings({"snapshotMaxDepth": 5})
|
session.appium_settings({"snapshotMaxDepth": 5})
|
||||||
|
|
||||||
if workCount > 3:
|
if workCount > 3:
|
||||||
@@ -611,7 +615,8 @@ class ScriptManager():
|
|||||||
LogManager.method_info("保存屏幕图像成功", "关注打招呼", udid)
|
LogManager.method_info("保存屏幕图像成功", "关注打招呼", udid)
|
||||||
event.wait(timeout=2)
|
event.wait(timeout=2)
|
||||||
# 查找add图标
|
# 查找add图标
|
||||||
r = ControlUtils.clickLike(session, udid)
|
LogManager.method_info("开始点击点赞", "关注打招呼", udid)
|
||||||
|
ControlUtils.clickLike(session, udid)
|
||||||
|
|
||||||
count -= 1
|
count -= 1
|
||||||
LogManager.method_info("准备停止脚本", method="task")
|
LogManager.method_info("准备停止脚本", method="task")
|
||||||
@@ -623,8 +628,7 @@ class ScriptManager():
|
|||||||
event.wait(timeout=1)
|
event.wait(timeout=1)
|
||||||
LogManager.method_info("停止脚本成功", method="task")
|
LogManager.method_info("停止脚本成功", method="task")
|
||||||
|
|
||||||
|
LogManager.method_info(f"是否进行评论:{isComment}", "关注打招呼", udid)
|
||||||
|
|
||||||
# 使用OCR进行评论
|
# 使用OCR进行评论
|
||||||
if isComment:
|
if isComment:
|
||||||
self.comment_flow(filePath, session, udid, 100, 100)
|
self.comment_flow(filePath, session, udid, 100, 100)
|
||||||
@@ -632,6 +636,8 @@ class ScriptManager():
|
|||||||
|
|
||||||
session.appium_settings({"snapshotMaxDepth": 12})
|
session.appium_settings({"snapshotMaxDepth": 12})
|
||||||
|
|
||||||
|
LogManager.method_info(f"检查当前是否为视频页面", "关注打招呼", udid)
|
||||||
|
|
||||||
is_back_enabled = ControlUtils.isClickBackEnabled(session)
|
is_back_enabled = ControlUtils.isClickBackEnabled(session)
|
||||||
if not is_back_enabled:
|
if not is_back_enabled:
|
||||||
print("返回失败")
|
print("返回失败")
|
||||||
@@ -675,8 +681,6 @@ class ScriptManager():
|
|||||||
msgButton = AiUtils.getSendMesageButton(session)
|
msgButton = AiUtils.getSendMesageButton(session)
|
||||||
event.wait(timeout=2)
|
event.wait(timeout=2)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if msgButton.exists:
|
if msgButton.exists:
|
||||||
# 进入聊天页面
|
# 进入聊天页面
|
||||||
msgButton.click()
|
msgButton.click()
|
||||||
@@ -1629,7 +1633,6 @@ class ScriptManager():
|
|||||||
user_text = None
|
user_text = None
|
||||||
info_count += 1
|
info_count += 1
|
||||||
|
|
||||||
|
|
||||||
if user_text:
|
if user_text:
|
||||||
print("点击进入用户主页")
|
print("点击进入用户主页")
|
||||||
user_text.tap()
|
user_text.tap()
|
||||||
@@ -1900,7 +1903,6 @@ class ScriptManager():
|
|||||||
LogManager.method_error(f"检测不到收件箱", "检测消息", udid)
|
LogManager.method_error(f"检测不到收件箱", "检测消息", udid)
|
||||||
raise Exception("当前页面找不到收件箱,重启")
|
raise Exception("当前页面找不到收件箱,重启")
|
||||||
|
|
||||||
|
|
||||||
# 放在 ScriptManager 类外面或 utils 里
|
# 放在 ScriptManager 类外面或 utils 里
|
||||||
def interruptible_sleep(self, event: threading.Event, seconds: float, slice_: float = 1.0):
|
def interruptible_sleep(self, event: threading.Event, seconds: float, slice_: float = 1.0):
|
||||||
"""把一次长 sleep 拆成 1 秒一片,随时响应 event"""
|
"""把一次长 sleep 拆成 1 秒一片,随时响应 event"""
|
||||||
@@ -1942,6 +1944,8 @@ class ScriptManager():
|
|||||||
LogManager.method_info("开始进行切换账号", "切换账号", udid)
|
LogManager.method_info("开始进行切换账号", "切换账号", udid)
|
||||||
LogManager.method_info("重启进行切换账号", "切换账号", udid)
|
LogManager.method_info("重启进行切换账号", "切换账号", udid)
|
||||||
|
|
||||||
|
#
|
||||||
|
|
||||||
# 打开个人主页
|
# 打开个人主页
|
||||||
session.appium_settings({"snapshotMaxDepth": 15})
|
session.appium_settings({"snapshotMaxDepth": 15})
|
||||||
user_home = session.xpath('//XCUIElementTypeButton[@name="a11y_vo_profile" or @label="主页"]')
|
user_home = session.xpath('//XCUIElementTypeButton[@name="a11y_vo_profile" or @label="主页"]')
|
||||||
@@ -2060,6 +2064,7 @@ class ScriptManager():
|
|||||||
"切换账号",
|
"切换账号",
|
||||||
udid
|
udid
|
||||||
)
|
)
|
||||||
|
print(f"本次切换到账号: {target_account} (use={next_idx}, next={(next_idx + 1) % n})", "切换账号", udid)
|
||||||
|
|
||||||
# 在同一份 OCR 结果里定位该用户名的坐标并点击
|
# 在同一份 OCR 结果里定位该用户名的坐标并点击
|
||||||
result = TencentOCR.find_last_name_bbox(ocr_json, target_account)
|
result = TencentOCR.find_last_name_bbox(ocr_json, target_account)
|
||||||
@@ -2072,7 +2077,7 @@ class ScriptManager():
|
|||||||
center_y = result["center"]["y"]
|
center_y = result["center"]["y"]
|
||||||
|
|
||||||
# 随机偏移(增强拟人)
|
# 随机偏移(增强拟人)
|
||||||
num = random.randint(-60, 60)
|
num = random.randint(-10, 10)
|
||||||
# 分辨率/坐标映射(按你设备比例;你原来是 /3)
|
# 分辨率/坐标映射(按你设备比例;你原来是 /3)
|
||||||
tap_x = int((center_x + num) / 3)
|
tap_x = int((center_x + num) / 3)
|
||||||
tap_y = int((center_y + num) / 3)
|
tap_y = int((center_y + num) / 3)
|
||||||
|
|||||||
Reference in New Issue
Block a user