首页 今日头条正文

倪,python办公自动化:PyAutoGUI入门秘笈二,牙髓炎

接上篇的python工作自动化:PyAutoGUI入门秘笈一后,咱们倪,python工作自动化:PyAutoGUI入门秘笈二,牙髓炎接下来对鼠标操控功用做更深一步的探究。学好鼠标操控,从此游戏,工作任你纵横。

鼠标操控功用

鼠标操控功用

屏幕和鼠标方位

屏幕上的方位由X和Y笛卡尔坐标引证。X坐标从左边的0开端向右添加。与数学不同,Y坐标从顶部的0开端,然后逐步柳礼源添加。

0,0 X increases -->
+---------------------------+
| | Y increases
| | |
| 1920 x 1080 screen | |
| | V倪,python工作自动化:PyAutoGUI入门秘笈二,牙髓炎
| |
| |
+---------------------------+ 1919, 1079

左上角的像素坐落坐标0,0处。假如屏幕的分辨率为1920 x 1080,则右下角的像素为1919,1079(由于坐标从0开端,而不是1)。

屏幕的分辨率

巨细由size(倪,python工作自动化:PyAutoGUI入门秘笈二,牙髓炎)函数回来为两个整数的元组。position()函数回来鼠标光标的当时X和Y坐标。

例如:

>>> pyautogui.size()
(1920, 1080)
>>> pyautogui.position()
(187, 567)

这是一个简略的Python 3程序,它将不断打印出鼠标光标的方位:

#! python3
import pyautogui, sys
print('Press Ctrl-C to quit.')
try:
while True:
x, y = pyautogui.position()
positionStr = 'X: ' + str(x).rjust(4) + ' Y: ' + str(y).rjust(4)
asdfspri萝莉女友nt(positionStr, end='')
print('\b' * len(posit倪,python工作自动化:PyAutoGUI入门秘笈二,牙髓炎ionStr), end='', flush=True)
except KeyboardInterrupt:
print('\n'簿本汉化)

这是Python 2版别:

#洛凝! python
import pyautogui, sys
print('Press Ctrl-C to quit.')
try:
while True:
x, y = pyautogui.position()
positionStr = 'X: ' + str(x).rjust(4) + ' Y: ' + str(y).rjust(4)
print positionStr,
print '\b' * (len(positionStr) + 2),
sys.stdout.flush()
except KeyboardInterrupt:
print '\n'

要查看屏幕上是否有XY坐标,请将它们(作为两个整数参数或带有两个整数的单个元组/列表参数)传递给onScreen()函数,True假如它们坐落屏幕的边界内,则回来,False假如不是,则回来。例如:

>>> pyautogui.onScreen(0, 0)
True
>>> pyautogui.onScreen(0, -1)
False
>>> pyautogui.onScreen(0, 99999999)
False
>>> pyautogui.size()
(1920, 1080)
>>> pyautogui.onScreen(1920, 1080)
False
>>> pyautogui.onScreen(1919, 1079)
True

鼠标移动

该moveTo()函数将鼠标光标移动到您传递的X和Y整数坐标。None可认为坐标传递该值以表明“当时鼠标光标方位”。例如:

>>> pyautogui.moveTo(100, 200) # moves mouse to X of 100, Y of 200.
>>> pyautogui.moveTo(None, 500) # moves mous倪,python工作自动化:PyAutoGUI入门秘笈二,牙髓炎e to X of 100, Y of 500.
>>> pyautogui.moveTo(600, None) # moves mouse to X of 600, Y of 500.

一般鼠标光标会当即移动到新坐标。假如您期望鼠标逐步移动到新方位,请传递第三个参数,持续时刻(以秒为单位)。例如:

>>> pyautogui.moveTo(100, 200, 2) # moves mouse to X of 100, Y of 200 over 2 seconds

(假如持续时刻小于pyautogui.MINIMUM_DURATION移动将是即时的。默许情况下,pyautogui.MINIMUM_DURATION为0.1。)

假如要将鼠标光标相对于其当时方位移动几个像素,请运用该move()功用。此功用具有与之相似的参数moveTo()。例如:

>>> pyautogui.moveTo(100, 200) # moves mouse to X of 100, Y of 200.
>>> pyautogui.move(0, 50) # move the mouse down 50 pixels.
>>> pyautogui.move(-30, 0倪,python工作自动化:PyAutoGUI入门秘笈二,牙髓炎) # move the mouse left 30 pixels.
>>> pyautogui.move(-30, None) # move the mouse left 30 pixels.

鼠标拖动

PyAutoGUI的dragTo()和drag()功用也有相似的参数作为moveTo()和move()功用。此外,他们有一个button能够被设置为关键字'left','middle'以及'right'针对鼠标左键按住拖动。例如:

>>> pyautogui.dragTo(100, 200, button='left') # drag mouse to X of 100, Y of 200 while holding down left mouse button
>>> pyautogui.没胸罩dragTo(300, 400, 2, button='left') # drag mouse to X of 300, Y of 400 over 2 seconds while holding down left mouse butto倪,python工作自动化:PyAutoGUI入门秘笈二,牙髓炎n
>>> pyautogui.drag(30, 0, 2, button='right') # drag the mouse left 30 pixels over 2 seconds小玲建军 while holding down the right mouse button

补间/缓动函数

补间/缓动函数

补间是一个额定的功用,像上图飞机飞过的烟迹相同使鼠标移动花哨。三句话立刻让你不心烦假如您不关心这一点,您能够越过本节。

补间或缓动函数指示鼠标移动到方针时的进展。一般,当鼠标移瑾年春动一段颜力妃母系社会时刻时,鼠标以稳定速度直线移动到目的地。这称为线性补间或线性缓动函数。

Py暗黑通AutoGUI具有pyautogui模块中可用的其他补间函数。该pyautogui.easeInQuad功用可经过第四届参数moveTo(),move(),dragTo()和drag两穴()功用来使鼠标光标开端缓慢移动,然后朝着方针加速。总持续时刻依然与传递给函数的参数相同。该pyautogui.easeOutQuad是相反的:把鼠标指针开端移动速度快,但速度减慢,由于它挨近目的地。该pyautogui.easeOutElastic直到它稳定在目的地将冲过方针和“橡皮筋”来回。

例如:

>>> pyautogui.moveTo(100, 100, 2, pyautogui.easeInQuad) # start slow, end fast
>>> pyautogui.moveTo(100, 100, 2, pyautogui.easeOutQuad) # start fast, end slow
>>> p尼坤毒打昌珉的相片yautogui.moveTo(100, 100, 2, pyautogui.easeInOutQuad) # start and end fast, slow in middle
>>> pyautogui.moveTo(100, 100, 2, pyautogui.easeInBounce) # bounce at the end
>>> pyautog沙罗双树的誓词ui.moveTo(100, 100, 2, pyautogui.easeInElastic) # rub0x8007045bber band at the end

这些函数是从Al Sweigart的PyTweening模块仿制而来的:https ://pypi.python.org/pypi/PyTweening https://github.com/asweigart/pytweening不用装置此模块即可运用该功用。

假如要创立自己的补间函数,请界说一个函数,该函数在0.0(表明鼠标移动的开端)和1.0(表明鼠标移动的完毕)之间选用单个浮点参数,并在0.0和之间回来浮点值1.0。

鼠标点击

该click()功用模仿鼠标当时方位的单个鼠标左键单击。“点击”界说为按下按钮然后将其开释。例如:

>>> pyautogui.click() # click the mouse

要moveTo()在单击之前组合调用,请传递x和y关键字参数的整数:

>>> pyautogui.click(x=100, y=200) # move to 100, 200, then click the left mouse button.

要指定不同的鼠标键点击,传递'left','middle'或 关键字参数:'right'``for the ``button

>>> pyautogui.click(button='right') # right-click the mouse

要进行屡次单击,请将整数传递给clicks关键字参数。(可选)您能够将float或integer传递给intervalkeyword参数,以指定点击之间的暂停量(以秒为单位)。例如:

>>> pyautogui.click(clicks=2) # double-click the left mouse button
>>> pyautogui.click(clicks=2, i3u8773nterval=0.25) # double-click the left mouse button, but wit卡戴珊妹妹h a quarter second pause in between clicks
>>> pyautogui.click(button='right', clicks=3, interval=0.25) ## triple-click the right mouse button with a quarter second pause in between clicks

作为一种便利的快捷方式,该doubleClick()功用将双击鼠标左键。它还具有可选x,y,interval,和button关键字参数。例如:

>>> pyautogui.doubleClick() # perform a left-button double click

还有一个tripleClick()具有相似可选关键字参数的函数。

该rightClick()函数具有可选x和y关键字参数。

mouseDown()和mouseUp()函数

鼠标点击汉汉和拖动包含按下鼠标按钮并将其开释回来。假如要独自履行这些操作,请调用mouseDown()和mouseUp()功用。它们具有相同的x,y和button。例如:

>>> pyautogui.mouseDown(); pyautogui.mouseUp() # does the same thing as a left-button mouse click
>>> pyautogui.mouseDown(button='right') # press the right button down
>>> pyautogui.mouseUp(button='right', x=100, y=200) # move the mouse to 100, 200, then release the right button up.

鼠标翻滚

能够经过调用scroll()函数并传递整数个“点击”来翻滚来模仿鼠标滚轮。“点击”中的翻滚量因渠道而异。(可选)能够传递整数x和y关键字参数,以便在履行翻滚之前移动鼠标光标。例如:

>>> pyautogui.scroll(10) # scroll up 10 "clicks"
>>> pyautogui.scroll(-10) # scroll down 10 "clicks"
>>> pyautogui.scroll(10, x=100, y=100) # move mouse cursor to 100, 200, then scroll up 10 "clicks"

在OS X和Linux渠道上,PyAutoGUI还能够经过调用hscroll()函数来履行水平翻滚。例如:

>>> pyautogui.hscroll(10) # scroll right 10 "clicks"
>>> pyautogui.hscr暴君的逃婚皇后oll(-10) # scroll left 10 "clicks"

该scroll()函数是一个包装器vscroll(),用于履行笔直翻滚。

老铁们感觉有收成吗?能够点赞或支撑哦,接下来咱们进入下一站,键盘操控。

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

匈奴,深圳市特发信息股份有限公司关于收到《中国证监会行政许可请求间断检查通知书》的布告,字体管家

  • c9,汇市技能剖析 :美指冲高回落收拾 欧元英镑齐跌,全本免费小说

  •   一位东方园林前职工告知记者,他是2018年中被迫离任的,但他当年11月就获取了补偿。据其介绍,之前公司大举招人,又大面积裁人,他算是比较早被裁的一批。

      欠薪仍超1亿元

      记者注意到,本年头,东方园林迸发大面积欠薪。深交地点年报和半年报问询函中均说到了关于欠薪的相关情况。

      本年4月,在深交所对东方园林2018年年报问询函中指出:“到陈述期末,你公司在职职工的数量算计为 5244 人,较期初的 6129人削减了 885 人,敷衍职工薪酬余额为 2.55 亿元,较期初添加 199.08%,此外,近期多家媒体质疑你公司拖欠职工工资。”

      一个月后,东方园林回复闻业权上述问询函时表明:德江县城南新区自年头至今,公司连续发放了约4000 名职工(含离任人员)的算计约 1.91 亿元薪酬及补偿,现在还剩约 4000 名职工(含离任人员)的均匀约 3 个月薪酬及补偿待发放,合计约 2.39 亿元。现在,职工情况全体安稳,各工程项目连续施工,未对公司生产运营形成严重影响。公司现在正会集精力经过加大

  • 哈弗h7,东方园林持续处置财物变现 欠薪仍未结清,黎明

  • 速卖通,原创印度想要入“五常”?绝无或许!关键时刻,大国投下决定票,hyde

  • 图行天下,分析化学第六6版武汉大学课后习题答案解析,山东鲁能

  • 热门文章

    最近发表