我尝试使用Pyautogui的单击功能,但是尽管将鼠标移到了正确的位置,但实际的单击并没有发生,或者至少页面没有变化。
(我认为)窗口是焦点所在,因为该程序可与其他页面很好地配合使用。
我只能找到一个相关的问题:having trouble clicking in program - pyautogui。但是,对此没有可接受的答案,我尝试了链接中的给定答案,但没有用(它在python2中,但我在python3中)。
我使用Linux。我不知道为什么鼠标移到正确的位置却不执行点击。
代码:
from selenium import webdriver
import pyautogui as py
import time
import pandas as pd
browser=webdriver.Firefox()
browser.maximize_window()
browser.get("http://jao.eu/marketdata/dailyauctions")
py.click(x=745,y=692, interval=1)
答案 0 :(得分:0)
尝试如下编辑:
from selenium import webdriver
import pyautogui as py
import time
browser=webdriver.Chrome()
browser.maximize_window()
browser.get('http://jao.eu/marketdata/dailyauctions')
#Allows time for webpage to load
time.sleep(5)
#Set clicks parameter to 2
py.click(x=745,y=692, clicks=2, interval=1)
在click()函数中将clicks参数设置为2将使chrome浏览器刚刚打开活动窗口,第二次单击将单击click()函数中输入的坐标处的链接。
答案 1 :(得分:0)
对我来说,我使用的是我的 macbook m1。对于 Macbook,您需要专门授予控制设备的权限。
转到
Apple icon on top left -> System Preferences -> Security & Privacy -> Privacy -> Accessibility
允许终端/代码编辑器
如果您看到它变灰,请单击窗口左下方的锁定图标,然后您应该可以更改权限。
答案 2 :(得分:0)
对于 Windows,我也以管理员身份运行我的 python 代码,否则它无法识别鼠标点击。
另外,pyautogui 好像已经过时了,我发现了这个库的升级:pydirectinput (https://pypi.org/project/PyDirectInput/)