爱收集资源网

Python自动操作GUI神器——PyAutoGUI

网络整理 2024-02-06 22:08

你们好,我是@无欢不散,一个资深的互联网玩家和Python技术爱好者,喜欢分享硬核技术。

欢迎访问我的专栏:

在下篇文章《Python手动操作GUI利器——PyAutoGUI》中,我跟你们讲解了一下pyautogui的一些基础知识和操作,你们反馈挺好,给了我很多赞,在此先跟你们说声三克油!

在得到大伙正反馈的同时,我遭到了很大鼓舞,觉得假如只是介绍一下基础操作,有点不过瘾,所以明天早上加班回去,即使很不想打开笔记本,而且还是忍住疲倦给你们奉献一个小实例。

因此,我跑去洗手间用冷水洗了一把脸,瞬间清醒多了,下边步入题外话。

作为一个GUI操作的利器,我们看见了它的操作都很简单,特别浅显易懂,基本上看见函数能够晓得它的功效。

下边我来给你们演示一个小板栗,看了这个板栗后你才会明白它的利器来历了。

好了,不给你们绕弯子了,明天的小板栗就是批量给知乎的文章点赞。

思路

我们先来瞧瞧知乎的个人主页:

这儿,我将下边的tab标签切换到文章这儿,显示的就是作者的文章列表。

s点赞自助平台便宜_微信图片点赞怎么能得更多赞_手机兼职点赞平台

我们先来想一下,假如我要给那位作者的文章点赞,我须要怎样做?

首先,我须要找到点赞的图标;之后,我点击点赞图标,完成一次点赞;当我将视野内的文章点赞完成后,我拖动页面往下降,继续前面的步骤。

听到这儿,你是不是认为如此说有点二?

而且我们写程序就必须这样,把每一个步骤都明晰,之后按照步骤去写逻辑,不然当你动手写逻辑的时侯s点赞自助平台便宜,你可能会遗漏一些细节,造成程序难以达到预期疗效,或则出现bug。

实现

有了前面的步骤,我们就可以着手开发代码了。

首先,我要让程序辨识点赞的按扭。下篇文章中我介绍过一个小板栗,就是从桌面上找到浏览器的图标,我们须要将浏览器的图标截图保存为一张图片,然后传给程序,让程序用这张图片到屏幕中去找寻。

这儿也是一样,我先将知乎的点赞按键截了图:

根据前面的步骤,我首先须要辨识当前桌面上的点赞按键,只须要一行代码:

allLocation = pyautogui.locateAllOnScreen('agree.png')

这样就可以找到桌面上所有的点赞按键了。

微信图片点赞怎么能得更多赞_手机兼职点赞平台_s点赞自助平台便宜

找到点赞按键以后,下一步就是点赞了:

def like():
    time.sleep(1)  
    if pyautogui.locateOnScreen('agree.png'):
        left, top, width, height = pyautogui.locateOnScreen('agree.png')
        center = pyautogui.center((left, top, width, height))   
        pyautogui.click(center)    
        print('点赞成功!')

这儿,我首先休息了一秒钟,避免程序运行过快,把页面搞崩溃或则触发平台的安全策略。

接着我找到点赞的按键s点赞自助平台便宜,估算按键的中心点,之后进行点击。

这样,我们就顺利地完成了一次点赞操作。

之后,我再来写一个判定,假如当前桌面上的点赞按键都点过了,就滚动屏幕,到下一屏继续点赞:

while True:
    allLocation = pyautogui.locateAllOnScreen('agree.png')
    if len(list(allLocation)) > 0:
        like()   # 调用点赞函数
    else:
        try:
            pyautogui.scroll(-500)    
            print('我滚了!')
        except:
            print('完蛋啦')

整个代码运行上去是这样的:

注意,在程序运行过程中,一定要将打开知乎页面的浏览器切换到桌面最下层,以保证你当前操作的是这个页面。

这儿没有写中止条件,所以程序会仍然运行下去,直至你自动中止。

总结

整个板栗就是这样的,简洁而不简单,尽管只有几行代码,并且替我完成了一次手动化操作。可能这儿举知乎的事例还不太恰当,由于知乎是有分页的,假如是大瀑布流的页面,那真的可以始终点赞下去,恐怕你可以试试给csdn的文章点赞。

s点赞自助平台便宜
上一篇:网红和主播,一个很有人气的故事 下一篇:没有了