做个自动化软件拿来办公、刷副本、回微信 | 源码公开,开箱即用
写在最开始的话:
看了B站一个up主的讲解之后尝试自己动手实现了一下。下面是源视频地址 。得到作者的同意分享出来。
5分钟,教你做个自动化软件拿来办公、刷副本、回微信 | 源码公开,开箱即用_哔哩哔哩_bilibili手撸一个自动化软件,可以用来办公、玩游戏、甚至回微信源码放出、开箱即用https://www.bilibili.com/video/BV1T34y1o73U?spm_id_from=333.999.0.0
1.环境配置
pycharm2021,python3.8,anaconda3
安装教程
PyCharm Community安装与配置_fangye945a的博客-CSDN博客_pycharmcommunity最近python挺火,空闲时间看了几个python视频,觉得简单易懂,开发效率高,应用范围广,值得学习。如下便开始搭建学习环境,即安装一款好用的Python IDE。 Pycharm作为一款针对 Python的编辑器,配置简单、功能强大、使用起来省时省心,对初学者友好,所以先在windows上进行安装、配置和使用。一、Pycharm的下载和安装PyCharm ...https://xiaoyege.blog.csdn.net/article/details/87829481Anaconda--Pycharm安装教程_努力成为码农的小可爱~的博客-CSDN博客_pycharm安装anaconda因为不想每次下载安装的时候都要去找博客,干脆就参考别人的博客,把自己需要的写下来了。1、Anaconda的安装 从官网https://www.anaconda.com/download/下载Anaconda的安装程序,在该页面选择你电脑所对应的系统(Windows、macOS or Linux)以及操作系统位数(64位 or 32位)。 选择Python 3.8,等待下载完成,之后便会得到一个anaconda的exe可执行文件。![在这里插入图片描述](https://img-blog.csd
https://blog.csdn.net/weixin_43911610/article/details/109037361
2.安装第三方库
pyperclip、xlrd、pyautogui==0.9.50、pillow、opencv-python(使用pyautogui需要用到)
安装教程:
https://blog.csdn.net/pxyp123/article/details/124195031https://blog.csdn.net/pxyp123/article/details/124195031
3.截图需要自动操作的步骤
把每一步要操作的图标、区域截图保存至本文件夹 png格式(注意如果同屏有多个相同图标,回默认找到最左上的一个
4.在excel文件配置操作内容
在cmd.xls 的sheet1(也可以是其他的sheet,可以自己在代码中更改) 中,配置每一步的指令,如指令类型1234 对应的内容填截图文件名(别用中文),指令5对应的内容是等待时长(单位秒) 指令6对应的内容是滚轮滚动的距离,正数表示向上滚,负数表示向下滚,数字大一点,先用200和-200试试
5.运行程序
waterRPA.py打开程序,按1表示excel中的指令执行一次,按2表示无限重复执行直到程序关闭
只需要用到一个代码,但是你的excel和保存的图片要和代码在同一个目录下。如图所示:
6.我的配置
做了一个自动刷csdn阅读量的测试。
自动化软件测试
7.资源获取
链接:https://pan.baidu.com/s/1Y80aPk13SQOxnMU8ae885g
提取码:w2rx
--来自百度网盘超级会员V6的分享
「waterRPA」https://www.aliyundrive.com/s/4FLiUchKWNF 提取码: a8s9 点击链接保存,或者复制本段内容,打开「阿里云盘」APP ,无需下载极速在线查看,视频原画倍速播放。
源码:
import pyautogui
import time
import xlrd
import pyperclip
#import opencv-pyhton
import cv2
#定义鼠标事件#pyautogui库其他用法 https://blog.csdn.net/qingfengxd1/article/details/108270159def mouseClick(clickTimes,lOrR,img,reTry):if reTry == 1:while True:location=pyautogui.locateCenterOnScreen(img,confidence=0.9)#location=pyautogui.locateOnScreen(img,confidence=0.9)if location is not None:pyautogui.click(location.x,location.y,clicks=clickTimes,interval=0.2,duration=0.2,button=lOrR)breakprint("未找到匹配图片,0.1秒后重试")time.sleep(0.1)elif reTry == -1:while True:location=pyautogui.locateCenterOnScreen(img,confidence=0.9)if location is not None:pyautogui.click(location.x,location.y,clicks=clickTimes,interval=0.2,duration=0.2,button=lOrR)time.sleep(0.1)elif reTry > 1:i = 1while i < reTry + 1:location=pyautogui.locateCenterOnScreen(img,confidence=0.9)if location is not None:pyautogui.click(location.x,location.y,clicks=clickTimes,interval=0.2,duration=0.2,button=lOrR)print("重复")i += 1time.sleep(0.1)# 数据检查
# cmdType.value 1.0 左键单击 2.0 左键双击 3.0 右键单击 4.0 输入 5.0 等待 6.0 滚轮
# ctype 空:0
# 字符串:1
# 数字:2
# 日期:3
# 布尔:4
# error:5
def dataCheck(sheet1):checkCmd = True#行数检查if sheet1.nrows<2:print("没数据啊哥")checkCmd = False#每行数据检查i = 1while i < sheet1.nrows:# 第1列 操作类型检查cmdType = sheet1.row(i)[0]if cmdType.ctype != 2 or (cmdType.value != 1.0 and cmdType.value != 2.0 and cmdType.value != 3.0 and cmdType.value != 4.0 and cmdType.value != 5.0 and cmdType.value != 6.0):print('第',i+1,"行,第1列数据有毛病")checkCmd = False# 第2列 内容检查cmdValue = sheet1.row(i)[1]# 读图点击类型指令,内容必须为字符串类型if cmdType.value ==1.0 or cmdType.value == 2.0 or cmdType.value == 3.0:if cmdValue.ctype != 1:print('第',i+1,"行,第2列数据有毛病")checkCmd = False# 输入类型,内容不能为空if cmdType.value == 4.0:if cmdValue.ctype == 0:print('第',i+1,"行,第2列数据有毛病")checkCmd = False# 等待类型,内容必须为数字if cmdType.value == 5.0:if cmdValue.ctype != 2:print('第',i+1,"行,第2列数据有毛病")checkCmd = False# 滚轮事件,内容必须为数字if cmdType.value == 6.0:if cmdValue.ctype != 2:print('第',i+1,"行,第2列数据有毛病")checkCmd = Falsei += 1return checkCmd#任务
def mainWork(img):i = 1while i < sheet1.nrows:#取本行指令的操作类型cmdType = sheet1.row(i)[0]if cmdType.value == 1.0:#取图片名称img = sheet1.row(i)[1].valuereTry = 1if sheet1.row(i)[2].ctype == 2 and sheet1.row(i)[2].value != 0:reTry = sheet1.row(i)[2].valuemouseClick(1,"left",img,reTry)print("单击左键",img)#2代表双击左键elif cmdType.value == 2.0:#取图片名称img = sheet1.row(i)[1].value#取重试次数reTry = 1if sheet1.row(i)[2].ctype == 2 and sheet1.row(i)[2].value != 0:reTry = sheet1.row(i)[2].valuemouseClick(2,"left",img,reTry)print("双击左键",img)#3代表右键elif cmdType.value == 3.0:#取图片名称img = sheet1.row(i)[1].value#取重试次数reTry = 1if sheet1.row(i)[2].ctype == 2 and sheet1.row(i)[2].value != 0:reTry = sheet1.row(i)[2].valuemouseClick(1,"right",img,reTry)print("右键",img) #4代表输入elif cmdType.value == 4.0:inputValue = sheet1.row(i)[1].valuepyperclip.copy(inputValue)pyautogui.hotkey('ctrl','v')time.sleep(0.5)print("输入:",inputValue) #5代表等待elif cmdType.value == 5.0:#取图片名称waitTime = sheet1.row(i)[1].valuetime.sleep(waitTime)print("等待",waitTime,"秒")#6代表滚轮elif cmdType.value == 6.0:#取图片名称scroll = sheet1.row(i)[1].valuepyautogui.scroll(int(scroll))print("滚轮滑动",int(scroll),"距离") i += 1if __name__ == '__main__':#file = 'cmd.xls'file = 'cmd_my.xls'#打开文件wb = xlrd.open_workbook(filename=file)#通过索引获取表格sheet页sheet1 = wb.sheet_by_index(3)print('欢迎使用不高兴就喝水牌RPA~')#数据检查checkCmd = dataCheck(sheet1)if checkCmd:key=input('选择功能: 1.做一次 2.循环到死 \n')if key=='1':#循环拿出每一行指令mainWork(sheet1)elif key=='2':while True:mainWork(sheet1)time.sleep(0.1)print("等待0.1秒") else:print('输入有误或者已经退出!')
做个自动化软件拿来办公、刷副本、回微信 | 源码公开,开箱即用相关推荐
- C#毕业设计——基于C#+c+sqlserver的办公耗材库存管理软件设计与实现(毕业论文+程序源码)——库存管理软件
基于C#+c+sqlserver的办公耗材库存管理软件设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于C#+c+sqlserver的办公耗材库存管理软件设计与实现,文章末尾附有本毕业设计的 ...
- PPT办公软件网页素材资源下载类网站源码 dedecms织梦模板 利于SEO优化
简介: 织梦最新内核开发的模板,该模板属于图片素材.PPT素材.Excel素材.Word素材.网页素材类企业都可使用,这款模板使用范围极广,不仅仅局限于一类型的企业,你只需要把图片和产品内容换成你的, ...
- java毕业设计——基于java+Winpcap的局域网监听软件设计与实现(毕业论文+程序源码)——局域网监听软件
基于java+Winpcap的局域网监听软件设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于java+Winpcap的局域网监听软件设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦 ...
- java毕业设计线上办公工作流系统mybatis+源码+调试部署+系统+数据库+lw
java毕业设计线上办公工作流系统mybatis+源码+调试部署+系统+数据库+lw java毕业设计线上办公工作流系统mybatis+源码+调试部署+系统+数据库+lw 本源码技术栈: 项目架构:B ...
- 基于JAVA医保局综合办公系统计算机毕业设计源码+系统+数据库+lw文档+部署
基于JAVA医保局综合办公系统计算机毕业设计源码+系统+数据库+lw文档+部署 基于JAVA医保局综合办公系统计算机毕业设计源码+系统+数据库+lw文档+部署 本源码技术栈: 项目架构:B/S架构 开 ...
- java计算机毕业设计OA办公系统设计与实现源码+mysql数据库+系统+lw文档+部署
java计算机毕业设计OA办公系统设计与实现源码+mysql数据库+系统+lw文档+部署 java计算机毕业设计OA办公系统设计与实现源码+mysql数据库+系统+lw文档+部署 本源码技术栈: 项目 ...
- java计算机毕业设计OA办公系统设计与实现源码+数据库+系统+lw文档
java计算机毕业设计OA办公系统设计与实现源码+数据库+系统+lw文档 java计算机毕业设计OA办公系统设计与实现源码+数据库+系统+lw文档 本源码技术栈: 项目架构:B/S架构 开发语言:Ja ...
- C#毕业设计——基于C#+vs.net+SQL Server的多功能聊天软件设计与实现(毕业论文+程序源码)——多功能聊天软件
基于C#+vs.net+SQL Server的多功能聊天软件设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于C#+vs.net+SQL Server的多功能聊天软件设计与实现,文章末尾附有 ...
- 计算机毕业设计JavaOA办公系统设计与实现(源码+系统+mysql数据库+lw文档)
计算机毕业设计JavaOA办公系统设计与实现(源码+系统+mysql数据库+lw文档) 计算机毕业设计JavaOA办公系统设计与实现(源码+系统+mysql数据库+lw文档) 本源码技术栈: 项目架构 ...
最新文章
- Elide 4.3.1 发布,雅虎开源的应用数据 API 搭建平台
- ES6新特性之转码器(UmiJS入门)
- Hyper-v Server 2012 Release Candidate 部署体验
- matlab 判断鼠标按下_Simulink(其他校验模块)+Matlabgui(鼠标响应事件)+Stateflow汽车运动逻辑状态(二)...
- 今天一看,自己发的文章原来这么多了。openeim
- 使用VS2010编译64的Geos库
- linux shell常用函数,ps
- 419.甲板上的战舰
- postSQL hash分表
- spring security +oauth2(授权服务和资源服务分离) 解决getPrincipal只返回用户名的问题
- photoshop合并图层:向下合并、合并选中层、合并可见图层、拼合图像操作
- python心得总结知识点和收获,千锋Python培训学员心得 在总结中收获提升
- iOS 判断是否为iPhoneX以上设备
- Dev c++ 怎么设置背景色
- 2022LOL微博杯模糊问题,1080p高清看微博杯the shy比赛直播
- 拉升股价套利为饵狂骗157万 广州邦臣机械气化炉警方:防理财诈骗
- java httpClient使用代理实现互联网公网访问
- mycat的主从关系 垂直分库 水平分表 以及mycat分片联表查询的配置详解(mysql5.7系列)
- MongoDB分组取每组中一条数据
- Java工程师(面试)