You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Pyautogui设置时间延迟以实现漫画阅读自动化操作?

PyAutoGUI 漫画阅读自动化时长控制实现方案

核心实现逻辑

  • 单操作执行时长:通过PyAutoGUI内置方法的duration参数设置,可控制鼠标移动、拖拽等单个动作的完成耗时
  • 固定等待时长:通过time.sleep()设置两个操作之间的间隔,比如点击下一页后等待页面加载的时间
  • 指定时长持续操作:针对滚动这类需要持续执行的操作,通过时间戳差值判断循环执行时长,即可实现指定时间的持续滚动
  • 滚动完成后直接调用你已经掌握的pyautogui.click(x, y)方法即可触发下一页点击

可直接运行的参考代码

import pyautogui
import time

# 全局配置,仅需在代码开头设置1次
pyautogui.FAILSAFE = True

# 自定义参数,可根据实际需求修改
scroll_total_time = 200  # 单次持续滚动总时长,单位:秒
scroll_step = int(input('请输入滚动步长:'))
next_page_x = 1000  # 替换为你实际的下一页按钮X坐标
next_page_y = 500  # 替换为你实际的下一页按钮Y坐标
start_wait_time = 3  # 程序启动后等待时间,预留切换到漫画页面的时间

# 启动前等待
time.sleep(start_wait_time)

while True:
    # 执行指定时长的持续滚动
    scroll_start = time.time()
    while time.time() - scroll_start < scroll_total_time:
        pyautogui.scroll(scroll_step)
        # 若滚动速度过快,可取消下方注释,调整间隔时间
        # time.sleep(0.1)
    
    # 滚动结束后点击下一页
    pyautogui.click(next_page_x, next_page_y)
    # 等待下一页加载完成,可根据页面加载速度调整时长
    time.sleep(1)

原有代码问题修正说明

  • 原有代码中while 0 < 10是死循环,若需要添加终止条件可自行补充判断逻辑
  • 无需使用pyautogui.time.sleep,直接导入time模块调用sleep()写法更规范
  • pyautogui.FAILSAFE是全局配置,不需要放在循环内重复赋值
  • 原有代码中moveTo的duration参数仅控制鼠标移动到指定坐标的耗时,无法控制滚动总时长,因此单独设置该参数达不到持续滚动200秒的效果

内容的提问来源于stack exchange,提问作者cthulhu777

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 09:36:03