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

复制代码
  # 1. 导入 WinBotMain 类
  from PyAibote import WinBotMain
  import time,os
  
  # 2. 自定义一个脚本类,继承 WinBotMain
  class CustomWinScript(WinBotMain):
  
      # 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.find_windows()
          print(result)
  
  
  
  
  
  
  
  
  if __name__ == '__main__':
      # 3. IP为:0.0.0.0, 监听 9999 号端口
      # 3.1. 在远端部署脚本时,请设置 Debug=False,客户端手动启动 WindowsDriver.exe 时需指定远端 IP 或端口号
      # 3.2. 命令行启动示例:"127.0.0.1" 9999 {'Name':'PyAibote'}
      CustomWinScript.execute("0.0.0.0", 9999, Debug=True)

QQ开源社区交流群:

相关推荐
autobaba2 天前
XPath 1.0 完整用法指南
selenium·rpa
掌心向暖RPA自动化4 天前
用影刀RPA获取公呺搜索关键词文章数据,如何判断文章条目元素是否在可视区域?| 文章列表的循环点击方案拆解
经验分享·自动化·新媒体运营·rpa·影刀rpa
天空属于哈夫克34 天前
利用 RPA 绕过 API 限制,实现企业微信外部群主动触达
企业微信·rpa
天空属于哈夫克34 天前
基于 RPA 自动化实现企业微信外部群消息触达的逻辑与实现
自动化·企业微信·rpa
天空属于哈夫克34 天前
基于 RPA 自动化实现企微外部群消息触达的逻辑与实践
自动化·企业微信·rpa
天空属于哈夫克34 天前
企业微信外部群RPA自动化实战
自动化·企业微信·rpa
RPA机器人就选八爪鱼5 天前
RPA在银行IT运维领域的应用场景与价值分析
大数据·运维·数据库·人工智能·机器人·rpa
天空属于哈夫克36 天前
利用剪贴板“管道”实现超大文本的极速填充
自动化·企业微信·api·rpa
梦想的旅途28 天前
三语言实现企微外部群消息推送
自动化·企业微信·rpa
AI_56789 天前
Python RPA解放Excel生产力
python·excel·rpa