python 自动化神器 多平台纯代码RPA办公自动化python框架
Pyaibote是一款专注于纯代码RPA(机器人流程自动化)的强大工具,支持Android、Browser和Windows三大主流平台。无论您需要自动化安卓应用、浏览器操作还是Windows应用程序,Pyaibote都能轻松应对
Pyaibote可以同时协作Windows、Web和Android平台机器人,满足您多样化的办公自动化需求
框架开发文档网址:PyAibote
GItHub开源地址:PyAibote: (github.com)
1. 下载安装PyAibote包, 打开终端输入以下命令:
pip3 install PyAibote -i https://pypi.tuna.tsinghua.edu.cn/simple
2. 下载AiBote集成环境文件, 解压后放在没有中文的路径下, 并将Aibote的文件夹加入到系统环境变量中
Aibote集成环境下载: Aibote.zip
3. 安卓自动化开发
3.1. 安卓手机投屏开发环境视频教程: 安卓手机投屏-局域网投屏_哔哩哔哩_bilibili
3.2. 安卓开发环境配置视频教程:1. PyAibote安卓开发环境配置_哔哩哔哩_bilibili
3.3. 安卓快速开发视频教程: 2.快速使用_哔哩哔哩_bilibili
# 1. 导入 AndroidBotMain 类
from PyAibote import AndroidBotMain
import time # 2. 自定义一个脚本类,继承 AndroidBotMain
class CustomAndroidScript(AndroidBotMain): # 2.1. 设置是否终端打印输出 DEBUG:输出, INFO:不输出, 默认打印输出
Log_Level = "DEBUG" # 2.2. 终端打印信息是否存储LOG文件 True: 储存, False:不存储
Log_Storage = True # 2.3. 注意:script_main 此方法是脚本执行入口必须存在此方法
def script_main(self):
# 显示手机最近任务列表
result = self.recent_tasks()
print(result) if __name__ == '__main__':
# 3. 注意:此处监听的端口号,必须和手机端的脚本端口号一致
# 3.1 监听 8888 号端口, 如果你想启动多个端口号给一个列表比如: [8888,7777,6666,5555]
CustomAndroidScript.execute("0.0.0.0", 8888)
4. Web自动化开发
4.1. Web开发环境配置视频教程: 1.PyAibote Web开发环境配置_哔哩哔哩_bilibili
4.2. Web快速开发视频教程: 2.快速使用_哔哩哔哩_bilibili
# 1. 导入 AndoridBotMain 类
from PyAibote import WebBotMain
import time # 2. 自定义一个脚本类,继承 WebBotMain
class CustomWebScript(WebBotMain): # 3. 设置是否终端打印输出 DEBUG:输出, INFO:不输出, 默认打印输出
Log_Level = "DEBUG" # "INFO" # 4. 终端打印信息是否存储LOG文件 True: 储存, False:不存储
Log_Storage = True # True # 5. 全局隐式等待 [找不到元素重复查找]
# 5.1 元素未加载等待时间(秒)
Implicit_Waiting = 5 # 5.2 元素未加载间隔多少时间重复加载(秒)
Implicit_Waiting_Frequency = 0.5 # 5.3 超过未加载等待时间是否抛出异常
Implicit_Waiting_Throwing = False # 6. 注意:此方法是脚本执行入口
def script_main(self):
result = self.goto("https://baidu.com")
print(result) # 6.1. 显示等待和隐式等待意思一样, 显示等待可以让你在某个局部代码中自定义设置等待时长
# StartShowWait函数后的代码按照等待10秒,每个0.5秒重复加载,False找不到不抛出异常,此时你如果设置的全局隐式等待将不生效直到结束显示等待
self.StartShowWait(10, 0.5, False) result = self.goto("https://qq.com")
print(result)
result = self.goto("https://www.hao123.com")
print(result) # 6.1 结束显示等待,也是自定义结束局部等待此时如果设置的全局隐式等待后面的代码将按全局隐式等待的设置来执行
self.EndShowWait() if __name__ == '__main__':
# 7. 启动脚本,监听 9999 号端口, 默认使用 Chrome 浏览器 # 7.1. Debug=True 时,是本地运行脚本,会自动启动 WebDriver.exe 驱动
# 7.2. 打开终端输入:start chrome.exe --remote-debugging-port=8989 即可创建一个8989的端口浏览器, "debugPort" 参数改为8989即可接管浏览器
# 在远端部署脚本时,请设置 Debug=False,手动启动 WebDriver.exe,启动 WebDriver.exe 时需指定远端 IP 或端口号 # 7.3. 如本地部署脚本,需要传递 WebDriver 启动参数时,参考下面方式,如不需传递启动参数,则忽略: # 7.4 终端命令行启动驱动示例:
# WebDriver.exe "{\"serverIp\":\"127.0.0.1\", \"serverPort\":9999, \"browserName\":\"chrome\", \"debugPort\":0, \"userDataDir\":\"./UserData\", \"browserPath\":\"null\", \"argument\":\"null\", \"extendParam\":\"{'Name':'PyAibote'}\"}" driver_params = {
"browserName": "chrome",
"debugPort": 0,
"userDataDir": "./UserData",
"browserPath": None,
"argument": None, # 无头模式(后台运行浏览器)启动参数: --headless 浏览器版本大于112 的无头模式:--headless=new,多个启动参数空格隔开,示例: "argument": "--headless=new"
"extendParam":"{'Name':'PyAibote'}"
} # 参数说明:
# browserName 浏览器名称,默认 chrome 浏览器。edge和chrome会自动寻找浏览器路径,其他浏览器需要指定browserPath。
# debugPort 调试端口。默认 0 随机端口。指定端口则接管已打开的浏览器。启动浏览器指定的参数 --remote-debugging-port=19222 --user-data-dir=C:\\Users\\电脑用户名\\AppData\\Local\\Google\\Chrome\\User Data
# userDataDir 用户数据目录。多进程同时操作多个浏览器数据目录不能相同。部分操作系统edge浏览器必须指定用户数据目录。第一次指定数据目录路径会进入浏览器欢迎界面,第二次恢复正常操作
# browserPath 浏览器路径
# argument 浏览器启动参数。例如:设置代理:--proxy-server=127.0.0.1:8080 无头模式: --headless 浏览器版本>112 的无头模式:--headless=new,多个启动参数空格隔开
# extendParam 扩展参数,一般用作脚本远程部署场景,WebDriver.exe驱动程序传递参数给脚本服务端。使用 await webBot.getExtendParam(); 函数获取 CustomWebScript.execute("0.0.0.0", 9999, Debug=True, Driver_Params=driver_params)
5. Windows自动化开发
5.1. Windwos开发环境配置视频教程: 1.PyAiboteWindows开发环境配置_哔哩哔哩_bilibili
5.2. Windwos快速开发视频教程: 2. 快速使用_哔哩哔哩_bilibili
QQ开源社区交流群:
python 自动化神器 多平台纯代码RPA办公自动化python框架的更多相关文章
- 推荐一款最强Python自动化神器!不用写一行代码!
搞过自动化测试的小伙伴,相信都知道,在Web自动化测试中,有一款自动化测试神器工具: selenium.结合标准的WebDriver API来编写Python自动化脚本,可以实现解放双手,让脚本代替人 ...
- 推荐一款最强Python自动化神器!再也不用写代码了!
本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理 搞过自动化测试的小伙伴,相信都知道,在Web自动化测试中,有一款自动化测试神器工具: seleniu ...
- 探索微软开源Python自动化神器Playwright
相信玩过爬虫的朋友都知道selenium,一个自动化测试的神器工具.写个Python自动化脚本解放双手基本上是常规的操作了,爬虫爬不了的,就用自动化测试凑一凑. 虽然selenium有完备的文档,但也 ...
- Python自动化运维开发实战 一、初识Python
导语 都忘记是什么时候知道python的了,我是搞linux运维的,早先只是知道搞运维必须会shell,要做一些运维自动化的工作,比如实现一些定时备份数据啊.批量执行某个操作啊.写写监控脚本什么的. ...
- 纯代码系列:Python实现验证码图片(PIL库经典用法用法,爬虫12306思路)
现在的网页中,为了防止机器人提交表单,图片验证码是很常见的应对手段之一.这里就不详细介绍了,相信大家都遇到过. 现在就给出用Python的PIL库实现验证码图片的代码.代码中有详细注释. #!/usr ...
- Python自动化办公:27行代码实现将多个Excel表格内容批量汇总合并到一个表格
序言 (https://jq.qq.com/?_wv=1027&k=GmeRhIX0) 老板最近越来越过分了,快下班了发给我几百个表格让我把内容合并到一个表格内去.还好我会Python,分分钟 ...
- 微软开源 Python 自动化神器 Playwright
背景 逛博客时候突然看到 Playwright web自动化,感觉很有意思,就翻看了很多博客,简单记录一下. 简介 Playwright是一个强大的Python库,仅用一个API即可自动执行Chrom ...
- appium+python自动化项目实战(一):引入nose和allure框架
本文将介绍一套比较完整的appium自动化框架,以python为编写脚本语言,是因为python有强大的库,同时易学易懂. 最终的测试框架代码,将在jenkins项目中一键构建,执行自动化测试用例,并 ...
- python优势之通过一段代码来了解python的强大之处
晚上闲暇之余随意翻了一下博客,看到https://www.jianshu.com/p/69bf0ed0b5cc作者提到了一段代码,刚开始看没啥感觉,仔细深入后引起了我的注意.里面使用了python最简 ...
- Python自动化 【第十二篇】:Python进阶-MySQL和ORM
本节内容 数据库介绍 mysql 数据库安装使用 mysql管理 mysql 数据类型 常用mysql命令 创建数据库 外键 增删改查表 权限 事务 索引 python 操作mysql ORM sql ...
随机推荐
- 3 个好玩的前端开源项目「GitHub 热点速览」
单休的周末总是短暂的,还没缓过神新的一周就又开始了.如果你和我一样状态还没有完全恢复,那就让上周好玩的开源项目唤醒你吧! 每周 GitHub 上总是有一些让人眼前一亮的开源项目,上周好玩的前端项目特别 ...
- windows下使用winget快速安装nvm
前置条件: 操作系统 >= win10 安装 首先使用winget搜索nvm包 winget search nvm #搜索结果如下图 安装nvm winget install CoreyButl ...
- Java应用的优雅停机
一. 优雅停机的概念 优雅停机一直是一个非常严谨的话题,但由于其仅仅存在于重启.下线这样的部署阶段,导致很多人忽视了它的重要性,但没有它,你永远不能得到一个完整的应用生命周期,永远会对系统的健壮性持怀 ...
- Dubbo SPI扩展机制源码详解(基于2.7.10)
Dubbo SPI 一. 概述 本文主要分享 Dubbo 的拓展机制 SPI. 想要理解 Dubbo ,理解 Dubbo SPI 是非常必须的.在 Dubbo 中,提供了大量的拓展点,基于 Dubbo ...
- BigDecimal类的基本使用
概述 java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算.双精度浮点型变量double可以处理16位有效数.在实际应用中,需要对更大或者更小的 ...
- Java类加载过程&&静态代码块的初始化过程
问题的引入 还是老规矩,先说说自己遇到的问题. 最近看到了一个比较有意思的Java程序,初次看到这段程序执行的结果还是挺让我意外的,话不多说先上程序,大家也可以揣摩一下(大神自行略过......) c ...
- Django——form组件的全局钩子
前面提到过的都是针对单个字段的校验,如果想同时对多个字段进行校验,就可以使用全局钩子(编写全局钩子预留的clean方法,可以获取到多个字段并进行校验) 注意: ---- 默认的校验.自定义正则规则的校 ...
- Linux内核Kernel启动过程
在上一篇计算机启动过程文章中介绍了计算机启动的基本流程,本篇文章主要介绍Linux内核Kernel的启动过程. 一.内核启动的基本流程 sequenceDiagram participant Boot ...
- filebeat实战
1.打开filebeat支持nginx模块 [root@es-node1 /etc/filebeat]#ls fields.yml filebeat.reference.yml filebeat.ym ...
- node.js常用命令总结
Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时环境,用于构建快速.可扩展的网络应用程序.它使用事件驱动.非阻塞 I/O 模型,使其非常适合构建数据密集型的实时应用 ...