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 Matplotlib库入门指南
May 18 Python
Python中对元组和列表按条件进行排序的方法示例
Nov 10 Python
Tensorflow中的placeholder和feed_dict的使用
Jul 09 Python
利用arcgis的python读取要素的X,Y方法
Dec 22 Python
Python 实现两个服务器之间文件的上传方法
Feb 13 Python
python用for循环求和的方法总结
Jul 08 Python
python多进程并行代码实例
Sep 30 Python
小 200 行 Python 代码制作一个换脸程序
May 12 Python
浅谈python 类方法/静态方法
Sep 18 Python
如何在Python3中使用telnetlib模块连接网络设备
Sep 21 Python
利用python绘制中国地图(含省界、河流等)
Sep 21 Python
pip已经安装好第三方库但pycharm中import时还是标红的解决方案
Oct 09 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
php MYSQL 数据备份类
2009/06/19 PHP
PHP全概率运算函数(优化版) Webgame开发必备
2011/07/04 PHP
php操作redis缓存方法分享
2015/06/03 PHP
浅谈PHP中try{}catch{}的使用方法
2016/12/09 PHP
laravel框架如何设置公共头和公共尾
2019/10/22 PHP
Javascript this关键字使用分析
2008/10/21 Javascript
innerText和textContent对比及使用介绍
2013/02/27 Javascript
jQuery+CSS 半开折叠效果原理及代码(自写)
2013/03/04 Javascript
鼠标划过实现延迟加载并隐藏层的js代码
2013/10/11 Javascript
Javascript操作URL函数修改版
2013/11/07 Javascript
json+jQuery实现的无限级树形菜单效果代码
2015/08/27 Javascript
Javascript实现单例模式
2016/01/24 Javascript
jQuery插件支持同一页面被多次调用
2016/02/14 Javascript
使用Node.js处理前端代码文件的编码问题
2016/02/16 Javascript
页面get请求 中文参数方法乱码问题的快速解决方法
2016/05/31 Javascript
基于JavaScript实现点击页面任何位置返回
2016/08/31 Javascript
JS简单测试循环运行时间的方法
2016/09/04 Javascript
Angularjs的Controller间通信机制实例分析
2016/11/07 Javascript
微信小程序 网络API Websocket详解
2016/11/09 Javascript
ES6中的箭头函数实例详解
2017/04/06 Javascript
Nodejs连接mysql并实现增、删、改、查操作的方法详解
2018/01/04 NodeJs
Vue2.0学习系列之项目上线的方法步骤(图文)
2018/09/25 Javascript
echarts统计x轴区间的数值实例代码详解
2019/07/07 Javascript
Python给你的头像加上圣诞帽
2018/01/04 Python
使用Python对Dicom文件进行读取与写入的实现
2020/04/20 Python
Perfume’s Club法国站:购买香水和化妆品
2019/05/02 全球购物
Yankee Candle官网:美国最畅销蜡烛品牌之一
2020/01/05 全球购物
印度第一网上礼品店:IGP.com
2020/02/06 全球购物
出纳岗位职责模板
2013/11/27 职场文书
服装设计专业自荐书范文
2013/12/30 职场文书
学校节能宣传周活动总结
2014/07/09 职场文书
2014年工人工作总结
2014/11/25 职场文书
环境保护宣传标语大全!
2019/06/28 职场文书
MySQL EXPLAIN输出列的详细解释
2021/05/12 MySQL
Vue3.0 手写放大镜效果
2021/07/25 Vue.js
再谈python_tkinter弹出对话框创建
2022/03/20 Python