我在用python开发app自动化抢票工具,ios手机,appium连接

dlam128 dlam128 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

现在遇到的问题就是appium的点击指令 click 以及 tap 的执行效率都太低了

我用记时函数,等到准点去触发点击指令。 延迟足足有8秒以上

代码如下

wait_and_tap('13:55:30') # 等待的时间函数,系统时间到达目标时间后,执行下面的代码,该代码已经测试过没问题,无延迟
wait = WebDriverWait(driver, 1,0.01)
element = wait.until(EC.presence_of_element_located((AppiumBy.IOS_PREDICATE, "name == 'XXXX'")))
element.click()
current_time = time.strftime('%Y-%m-%d %H:%M:%S.') + str(int(time.time() * 1000) % 1000)
# 打印当前时间
print(f"开始的Clicked at {current_time}")

以上代码用的是click点击,换成tap点击坐标 延迟一样很大。

代码如下

for _ in range(20):  # 重复点击
    driver.tap([(location['x'], location['y'])]) #tap 循环点击
    current_time = time.strftime('%Y-%m-%d %H:%M:%S.') + str(int(time.time() * 1000) % 1000)
    print(f"Clicked at {current_time}")

循环点击20次,每次点击时间间隔1-2秒左右,抢票的话 需要1秒钟点击至少3-5次,差太多了。

 

还有一种点击方式

driver.execute_script('mobile: tap', {'x': x, 'y': y}) 利用wda的脚本发送点击,延迟更大

 

各位大佬还有甚么好方法吗?或者有没有什么思路??我实在是没办法了

...全文

相关推荐

评论
收藏 已收藏
分享
返回顶部
dlam128
Python俱乐部 4,710 成员 71 内容