首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PyAutoGUI,停止命令

PyAutoGUI,停止命令
EN

Stack Overflow用户
提问于 2020-01-21 22:01:09
回答 3查看 2K关注 0票数 3

实际上,我正在使用Pyautogui编写脚本,它控制我的鼠标并使用我的浏览器。我的问题是,如果最后一次点击不是点击超文本链接或类似的东西,我希望脚本停止以下操作或鼠标移动和点击!

这是我的代码:

代码语言:javascript
复制
import pyautogui

pyautogui.moveTo(118, 417, duration = 1) #immeuble A11 adductabilité
pyautogui.click(117, 418,)
pyautogui.moveTo(118, 418, duration = 1)
pyautogui.hotkey('ctrl', 'c')
pyautogui.moveTo(419, 1064, duration = 0.1) #go down to Internet explorer
pyautogui.click(419, 1064,)
pyautogui.moveTo(543, 955, duration = 0.1)
# click on Internet explorer
pyautogui.click(543, 955,)
pyautogui.moveTo(1630, 112, duration = 0.1) # click on Rechercher (IPON)
pyautogui.click(1630, 112,)
pyautogui.moveTo(1661, 470, duration = 0.1) # click on Rechercher IMMEUBLE
pyautogui.click(1661, 470,)
EN

回答 3

Stack Overflow用户

发布于 2020-01-21 22:17:37

可以检查它在屏幕上的位置,如果它悬停在错误的位置上,则取消代码?

票数 0
EN

Stack Overflow用户

发布于 2020-01-22 00:57:34

我的解决方案有点棘手:您需要跟踪浏览器URL的更改。如果它被更改了,那就意味着你已经点击了超链接。

代码语言:javascript
复制
import pyautogui
from tkinter import Tk


def get_url():
    """ Return current browser URL """
    pyautogui.click(150, 50, duration=1)
    pyautogui.hotkey('ctrl', 'c')
    return Tk().clipboard_get()


url = get_url()
pyautogui.click(500, 500)  # do something
if url != get_url():
    print("URL was changed!")
    # execute here 10 lines of code
# rest of the code here

但当你不得不处理web浏览器时,使用selenium要有效得多。

票数 0
EN

Stack Overflow用户

发布于 2020-01-21 22:40:15

在我看来,对于这种类型的操作,最好使用Selenium:https://selenium-python.readthedocs.io/

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59842777

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档