Python利用PyAutoGUI实现自动点赞

目录
  • 前言
  • 思路
  • 实现
  • 总结

前言

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

在得到大家正反馈的同时,我受到了很大鼓舞,感觉如果只是介绍一下基础操作,有点不过瘾,所以今天晚上加班回来,虽然很不想打开电脑,但是还是忍着疲惫给大家奉献一个小实例。

为此,我跑去洗手间用凉水洗了一把脸,顿时清醒多了,下面进入正题。

作为一个 GUI 操作的神器,我们看到了它的操作都很简单,非常通俗易懂,基本上看到函数就能知道它的功效。

下面我来给大家演示一个小栗子,看了这个栗子后你就会明白它的神器由来了。

好了,不给大家绕弯子了,今天的小栗子就是批量给知乎的文章点赞。

思路

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

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

我们先来想一下,如果我要给这位作者的文章点赞,我需要怎么做?

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

看到这里,你是不是觉得这么说有点二?

但是我们写程序就必须这样,把每一个步骤都明确,然后根据步骤去写逻辑,不然当你动手写逻辑的时候,你可能会遗漏一些细节,导致程序无法达到预期效果,或者出现bug。

实现

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

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

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

按照上面的步骤,我首先需要识别当前桌面上的点赞按钮,只需要一行代码:

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

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

找到点赞按钮之后,下一步就是点赞了:

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('点赞成功!')

这里,我首先休息了1秒钟,防止程序运行过快,把页面搞崩溃或者触发平台的安全策略。

接着我找到点赞的按钮,计算按钮的中心点,然后进行点击。

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

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

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

整个代码运行起来是这样的:

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

这里没有写终止条件,所以程序会一直运行下去,直到你手动终止。

总结

整个栗子就是这样的,简约而不简单,虽然只有几行代码,但是替我完成了一次自动化操作。可能这里举知乎的例子还不太恰当,因为知乎是有分页的,如果是瀑布流的页面,那真的可以一直点赞下去,或许你可以试试给 csdn 的文章点赞。

到此这篇关于Python利用PyAutoGUI实现自动点赞的文章就介绍到这了,更多相关Python PyAutoGUI自动点赞内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python编程实现简单的微博自动点赞

    目录 一.实现登陆微博功能 二.实现发送微博 三.实现微博自动点赞 觉得微博手动点赞太过麻烦? 其实自动点赞的实现并不困难! 本篇会有Cookie.session和token方面的知识,不太了解的可以先看下 web前端cookie session及token会话机制详解 我们先通过前两个小节大概了解一下我们Python登录微博的原理,然后第三小节就会跟大家介绍微博自动点赞的代码. 一.实现登陆微博功能 首先进入微博页面后按F12打开开发者工具,将如图的按钮点击后,在浏览器中手动登陆一次,在Net

  • python自动点赞功能的实现思路

    1.思路 通过pyautogui可以实现鼠标点击.滚动鼠标.截屏等操作.由此功能实现打开页面,进行点赞. aircv可以从大图像获得小图像的位置,利用pyautogui截屏得到的图片,可以在页面获取到每一个

  • Python实现简单自动评论自动点赞自动关注脚本

    目录 前言 开发环境 原理: 1. 请求伪装 2. 获取搜索内容的方法 3. 获取作品评论 4. 自动评论 5. 点赞操作 6. 关注操作 7. 获取创作者信息 8. 获取创作者视频 9. 调用函数 前言 今天的这个脚本,是一个别人发的外包,交互界面的代码就不在这里说了,但是可以分享下自动评论.自动点赞.自动关注.采集评论和视频的数据是如何实现的 开发环境 python 3.8 运行代码pycharm 2021.2 辅助敲代码requests 第三方模块 原理: 模拟客户端,向服务器发送请求 代

  • Python自动操作神器PyAutoGUI的使用教程

    目录 GUI 控制神器 鼠标操作 鼠标移动 鼠标点击 鼠标拖动 鼠标滚动 屏幕处理 获取屏幕截图 键盘输入 键盘函数 特殊符号 快捷键 信息框 总结 我们以前讲过怎样使用 Python 在浏览器中实现页面自动化操作,不管用哪种方式实现,都是通过定位页面中的元素来进行相应的操作. 今天我们来聊一聊如何在桌面实现自动化操作.与浏览器页面自动化操作类似,桌面自动化操作也是需要定位鼠标在桌面的位置,然后根据定位的位置执行对应的操作. GUI 控制神器 我们今天的主人公是 pyautogui,pyauto

  • python实现QQ空间自动点赞功能

    本文实例为大家分享了python实现QQ空间自动点赞的具体代码,供大家参考,具体内容如下 项目github地址 使用python实现qq空间自动点赞功能. 需自行安装库并配置环境. 我想实现的是每6个小时就自动更新一次cookie.这也是和网上其他版本相比具有的优点.不用手动输入cookie.更加自动.(不负责任的说,这个功能没有测试过.) 程序运行方法:将代码存为.py文件,运行即可. 输入QQ密码的时候采用了linux登录的方式--没有回显. from selenium import web

  • Python利用PyAutoGUI实现自动点赞

    目录 前言 思路 实现 总结 前言 在上篇文章<Python自动操作 GUI 神器——PyAutoGUI>中,我跟大家讲解了一下 pyautogui 的一些基础知识和操作,大家反馈很好,给了我好多赞,在此先跟大家说声三克油! 在得到大家正反馈的同时,我受到了很大鼓舞,感觉如果只是介绍一下基础操作,有点不过瘾,所以今天晚上加班回来,虽然很不想打开电脑,但是还是忍着疲惫给大家奉献一个小实例. 为此,我跑去洗手间用凉水洗了一把脸,顿时清醒多了,下面进入正题. 作为一个 GUI 操作的神器,我们看到了

  • python 利用PyAutoGUI快速构建自动化操作脚本

    一.背景 大家好,我是安果! 我们经常遇到需要进行大量重复操作的时候,比如:网页上填表,对 web 版本 OA 进行操作,自动化测试或者给新系统首次添加数据等 这些操作的特点往往是:数据同构,大多是已经有了的结构化数据:操作比较呆板,都是同一个流程的点击.输入:数据量大,极大消耗操作人精力 那么能不能自动化呢? 二.自动化的方案 如果你在 web 上进行操作, Python 的 Selenium 可以满足要求.如果需要对 GUI 界面进行操作,你恐怕得试验下"按键精灵"能不能满足要求.

  • Python利用PyAutoGUI模块实现控制鼠标键盘

    目录 前言 1.鼠标的相关控制 2.键盘的相关控制 前言 PyAutoGUI是一个简单易用,跨平台的可以模拟键盘鼠标进行自动操作的python库. 使用pip的方式安装pyautogui模块 pip install pyautogui pyautogui在使用的时候有两个比较关键的隐患(程序在启动起来以后很难关闭)需要注意一下.一是鼠标出现在屏幕的最上方会出现报错,二是键盘的自动操作太快,所以需要先设置一下相关的参数. import pyautogui as ui # 导入pyautogui代码

  • Python利用PyAutoGUI轻松搞定图片上传

    目录 实时获取鼠标的当前坐标 开始上传了 完整脚本 运行过程 最近用vuepress建了个博客,音乐的背景图片需要网络地址. 还有博客自动复用的摘要图片也需地址 开始用的阿里云的免费对象存储oss,但又是登录又是设置读写权限的,稀碎的操作令人疲惫.能不能简单点,自动上传,并且马上能得到文件的网络地址. 于是开始探索轻量级的方案,手动给自己搞一个,一键复制开箱即用的的上传页面: 把文件传到自己的云服务器上,传完后自带文件地址和copy按钮,流程顿时清爽了许多. 接下来的问题是,图片准备好了,十几张

  • python 利用toapi库自动生成api

    在学习做接口测试自动化的时候,我们往往会自己动手写一些简单的API,比如写一个简单的TODO API之类. 不过自己写API的时候经常需要造一些假数据,以及处理分页逻辑,开始的时候还觉得比较有意思,但久而久之就显得比较乏味了. 这时候你可能会想,有没有什么工具可以自动将一个线上的网站转化成简单的API呢? 这样的工具确实是存在的,而且不少,其中python语言中比较受欢迎的实现是https://github.com/gaojiuli/toapi项目,项目名称是toapi. 我们来简单体验一下这个

  • Python利用Selenium实现自动观看学习通视频

    目录 一.登录 二.进行一个页面的视频观看 三.所有视频的观看 四.总代码 其他 一.登录 以信号与系统课程为例,直接输入网址则出现登录界面: 由于学号登录需要验证码,因此选择电话登录: 直接在开发者工具中找到手机号输入框.密码输入框和登录按钮,并进行输入和点击: import time from selenium.webdriver import Chrome web = Chrome() web.get('https://mooc2-ans.chaoxing.com/mycourse/stu

  • Python利用pywin32实现自动操作电脑

    目录 1. 简介 2. 示例代码 3. 效果图 4. 代码解释 5. 常见问题 1. 简介 在windows系统上,重复性的操作可以用Python脚本来完成,其中常用的模块是win32gui.win32con.win32api,要使用这三个模块需要先安装pywin32.在cmd中输入如下命令,即可安装pywin32: pip install pywin32 这三个模块作用如下: win32gui:模块定义了Windows下关于图形操作的API,如查找窗口句柄的函数FindWindow和FindW

  • python之PyAutoGui教你做个自动脚本计算器的方法

    前提环境准备 python3+pillow+pyautogui 先提前安装好python3以及pillow和pyautogui模块 这里介绍一下模块安装方法 pip install pillow pip install pyautogui pip install opencv-python 最终效果是利用python脚本模拟电脑计算器进行自动计算,相当于模拟人去点击自带的计算器进行运算,想要做到这一点需要有两个条件: 1.模拟鼠标和键盘的输入工作 2.识别计算器按钮的位置 先来看一下win10电

随机推荐