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


Posted in Python onFebruary 26, 2020

1.思路

通过pyautogui可以实现鼠标点击、滚动鼠标、截屏等操作。由此功能实现打开页面,进行点赞。
aircv可以从大图像获得小图像的位置,利用pyautogui截屏得到的图片,可以在页面获取到每一个?的位置,进行点击。
当前页面点击完之后,通过pyautogui滚动鼠标的功能继续向下翻。从而实现循环。

 2. 参考

3. 安装包

这里利用了清华的镜像,不用镜像容易下载失败。
下载的opencv-contrib-pythonopencv_python版本也要带上。如果已经下载了不对版本,可以使用pip uninstall 删除。

pip install aircv
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-contrib-python==3.4.2.16 
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv_python==3.4.2.16 
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyautogui

4. 准备工作

需要把这个截下来图片放在代码的同目录下

很多人学Python过程中会遇到各种烦恼问题解决不了。为此小编建了个Python全栈免费答疑交流.裙 : 624440745

5. 代码

import cv2
import aircv as ac
import pyautogui
import time
import os
#获取赞所在的位置
def mousepos(img1,img2): 
imsrc = ac.imread(img1) # 原始图像
imsch = ac.imread(img2) # 带查找的部分
match_result=ac.find_all_template(imsrc, imsch,0.80)
#提取出中心点的横纵坐标
points=[]
for i in match_result:
points.append((i['result']))
return points
def begin():
#截屏
time.sleep(1)
img1 = pyautogui.screenshot()
if os.path.exists('1.png'): # 如果文件存在
# 删除文件,可使用以下两种方法。
os.remove('1.png') 
img1.save('1.png')
#由于匹配相似度不同,为了减少错误,把纵坐标不在点赞的那一条的删除
pos=mousepos('1.png','test.png')
for i in pos[:]:
if i[0]!=pos[0][0]:
pos.remove(i)
print(pos)
#点击
for i in pos:
pyautogui.moveTo(i[0], i[1])
pyautogui.click(clicks=10, interval=0.2)
time.sleep(1)
#滚动鼠标
pyautogui.scroll(-300, x=100, y=100)
#这一段仅仅是根据所在位置打开页面,这一段可以不要,自己打开点赞页面也行。
def openpage ():
pyautogui.click(x=1596 ,y=1063,clicks=1, interval=2)
pyautogui.click(x=1539 ,y=272,clicks=1, interval=2)
pyautogui.click(x=896, y=581,clicks=1, interval=2)
if __name__ == '__main__':
openpage();
for i in range(20): #根据自己的需要设置次数
begin()

总结

到此这篇关于python自动点赞功能的实现思路的文章就介绍到这了,更多相关python 自动点赞内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python实例之wxpython中Frame使用方法
Jun 09 Python
Python扫描IP段查看指定端口是否开放的方法
Jun 09 Python
python正则表达式re之compile函数解析
Oct 25 Python
Python3数据库操作包pymysql的操作方法
Jul 16 Python
Python常见MongoDB数据库操作实例总结
Jul 24 Python
python 对类的成员函数开启线程的方法
Jan 22 Python
python实现整数的二进制循环移位
Mar 08 Python
Python 数据可视化pyecharts的使用详解
Jun 26 Python
Python Subprocess模块原理及实例
Aug 26 Python
TENSORFLOW变量作用域(VARIABLE SCOPE)
Jan 10 Python
使用darknet框架的imagenet数据分类预训练操作
Jul 07 Python
Python xlwings插入Excel图片的实现方法
Feb 26 Python
python GUI库图形界面开发之PyQt5时间控件QTimer详细使用方法与实例
Feb 26 #Python
python GUI库图形界面开发之PyQt5窗口控件QWidget详细使用方法
Feb 26 #Python
python GUI库图形界面开发之PyQt5窗口类QMainWindow详细使用方法
Feb 26 #Python
python GUI库图形界面开发之PyQt5中QMainWindow, QWidget以及QDialog的区别和选择
Feb 26 #Python
python实现全排列代码(回溯、深度优先搜索)
Feb 26 #Python
python GUI库图形界面开发之PyQt5 Qt Designer工具(Qt设计师)详细使用方法及Designer ui文件转py文件方法
Feb 26 #Python
python 使用递归回溯完美解决八皇后的问题
Feb 26 #Python
You might like
超级简单的发送邮件程序
2006/10/09 PHP
收藏的一个php小偷的核心程序
2007/04/09 PHP
PHP实现域名whois查询的代码(数据源万网、新网)
2010/02/22 PHP
PHP中全局变量global和$GLOBALS[]的区别分析
2012/08/06 PHP
深入掌握include_once与require_once的区别
2013/06/17 PHP
php表单请求获得数据求和示例
2014/05/15 PHP
php实现通过ftp上传文件
2015/06/19 PHP
浅谈htmlentities 、htmlspecialchars、addslashes的使用方法
2016/12/09 PHP
基于PHP实现的多元线性回归模拟曲线算法
2018/01/30 PHP
CI框架附属类用法分析
2018/12/26 PHP
JavaScript之Getters和Setters 平台支持等详细介绍
2012/12/07 Javascript
js实现通用的微信分享组件示例
2014/03/10 Javascript
Jquery操作js数组及对象示例代码
2014/05/11 Javascript
jQuery实现图片轮播效果代码(基于jquery.pack.js插件)
2016/06/02 Javascript
AngularJS  自定义指令详解及实例代码
2016/09/14 Javascript
模板视图和AngularJS之间冲突的解决方法
2016/11/22 Javascript
利用Node.js了解与测量HTTP所花费的时间详解
2017/09/22 Javascript
JS实现提示框跟随鼠标移动
2019/08/27 Javascript
JavaScript如何处理移动端拍摄图片旋转问题
2019/11/16 Javascript
小程序简单两栏瀑布流效果的实现
2019/12/18 Javascript
python 判断自定义对象类型
2009/03/21 Python
Python批量修改文件后缀的方法
2014/01/26 Python
python实现猜数字游戏(无重复数字)示例分享
2014/03/29 Python
Python中list列表的一些进阶使用方法介绍
2015/08/15 Python
pandas的object对象转时间对象的方法
2018/04/11 Python
获取django框架orm query执行的sql语句实现方法分析
2019/06/20 Python
Pycharm github配置实现过程图解
2020/10/13 Python
探究 canvas 绘图中撤销(undo)功能的实现方式详解
2018/05/17 HTML / CSS
英国领先的大码时装品牌之一:Elvi
2018/08/26 全球购物
销售文员岗位职责
2013/11/29 职场文书
运动会通讯稿200字
2014/02/16 职场文书
保护环境演讲稿
2014/05/10 职场文书
Python selenium模拟网页点击爬虫交管12123违章数据
2021/05/26 Python
MySQL索引是啥?不懂就问
2021/07/21 MySQL
十大最强妖精系宝可梦,哲尔尼亚斯实力最强,第五被称为大力士
2022/03/18 日漫
vue实现可以快进后退的跑马灯组件
2022/04/08 Vue.js