{"id":15144391,"url":"https://github.com/jieliu2000/rpalite","last_synced_at":"2025-06-18T01:34:07.510Z","repository":{"id":247005056,"uuid":"824761045","full_name":"jieliu2000/RPALite","owner":"jieliu2000","description":"An open source RPA (Robotic Process Automation) library for python and Robot Framework","archived":false,"fork":false,"pushed_at":"2024-10-27T02:26:03.000Z","size":605,"stargazers_count":17,"open_issues_count":2,"forks_count":4,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-10-30T02:29:07.493Z","etag":null,"topics":["automation","python","robotframework","rpa","testing","uiautomation","windows"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jieliu2000.png","metadata":{"files":{"readme":"README-zh.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-05T22:07:40.000Z","updated_at":"2024-10-27T01:46:31.000Z","dependencies_parsed_at":"2024-07-30T17:14:58.821Z","dependency_job_id":"f7c9ac26-490b-4067-87ae-8ff5c5865010","html_url":"https://github.com/jieliu2000/RPALite","commit_stats":{"total_commits":16,"total_committers":1,"mean_commits":16.0,"dds":0.0,"last_synced_commit":"bb1ed6c6905417d2d0f5cbdff4aecdef22cf0ac8"},"previous_names":["jieliu2000/rpalite"],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jieliu2000%2FRPALite","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jieliu2000%2FRPALite/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jieliu2000%2FRPALite/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jieliu2000%2FRPALite/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jieliu2000","download_url":"https://codeload.github.com/jieliu2000/RPALite/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237890775,"owners_count":19382562,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","python","robotframework","rpa","testing","uiautomation","windows"],"created_at":"2024-09-26T10:41:05.319Z","updated_at":"2025-02-09T00:33:24.635Z","avatar_url":"https://github.com/jieliu2000.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RPALite - 一个开源的 Python 和 Robot Framework RPA（机器人流程自动化）编程库\n\n| [English](README.md) | [中文](README-zh.md) |\n\n[![PyPI](https://img.shields.io/pypi/v/RPALite?color=blue\u0026label=PyPI%20Package)](https://pypi.org/project/RPALite/)\n[![License](https://img.shields.io/github/license/jieliu2000/RPALite)](https://github.com/jieliu2000/RPALite/blob/main/LICENSE)\n[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/RPALite)](https://www.python.org/downloads/)\n\n## 目录\n\n- [简介](#简介)\n- [功能特性](#功能特性)\n- [平台支持](#平台支持)\n- [性能优化](#性能优化)\n- [文档](#文档)\n- [安装](#安装)\n- [快速入门](#快速入门)\n  - [Python](#python)\n  - [Robot Framework](#robot-framework)\n- [贡献指南](#贡献指南)\n\n## 简介\n\nRPALite 是一个开源的 RPA（机器人流程自动化）库。您可以通过 Python 或 [Robot Framework](https://robotframework.org/) 来使用 RPALite 实现各种自动化任务。\n\nRPALite 现在支持 Windows 平台。对 MacOS 和 Linux 的支持正在开发中。\n\n## 功能特性\n\nRPALite 支持以下操作：\n\n- 启动应用程序\n- 通过名称或 ClassName 查找应用程序\n- 关闭应用程序\n- 对特定文本进行鼠标点击\n- 基于占位符或标签定位和输入文本框\n- 基于坐标的鼠标点击\n- 支持左键点击、右键点击和双击操作\n- 基于控件名称、类或自动化 ID（Windows）定位控件并获取其坐标\n- 基于图像的定位。您可以将部分截图传递给 RPALite，以返回屏幕上对应部分的坐标\n- 屏幕录制功能\n- 剪贴板操作\n- 高级键盘输入支持（包括特殊键和组合键）\n- 窗口管理（最大化、最小化、显示桌面）\n\n## 平台支持\n\n### Windows\n\n- 完整的自动化支持，包括 UI 控件\n- Windows 特有功能，如 UI 自动化\n- 某些功能可能需要管理员权限\n\n### macOS (开发中)\n\n- macOS 支持目前正在开发中\n- 代码尚未稳定，因此暂时禁用了 macOS 相关功能\n- 我们正在努力在未来的版本中提供完整的 macOS 支持\n\n## 性能优化\n\nRPALite 中最耗时的操作是图像识别和 OCR。对于 OCR，用户可以选择使用 [EasyOCR](https://github.com/JaidedAI/EasyOCR)或者 [PaddleOCR](https://github.com/PaddlePaddle/PaddleOCR) 进行文本识别。EasyOCR和PaddleOCR 在具有独立显卡和 CUDA 支持的计算机上运行效率更高。如果您发现 RPALite 运行缓慢，请考虑在具有独立显卡和 CUDA 支持的计算机上运行，并安装适当版本的 PyTorch。\n\n## 文档\n\n在这份文档的后面部分，我们提供了[快速入门](#快速入门)，让你可以对 RPALite 有一个简单直接的了解。\n\n以下是更详细的文档链接：\n\n- [Python 中使用 RPALite 的编程指南](docs/zh/python/guide.md)\n- [Robot Framework 中使用 RPALite 的编程指南](docs/zh/robot/guide.md)\n\n除了以上文档以外，我们提供一份英文的 Robot Framework Library 文档，你可以通过[在线 Robot Framework 文档](https://jieliu2000.github.io/RPALite/docs/en/robot/RPALite.html)访问。如果你希望在本地打开，可以直接打开[项目目录下的 Robot Framework Library 文档](docs/en/robot/RPALite.html)。\n\n## 安装\n\n您可以通过 pip 安装 RPALite：\n\n```bash\npip install RPALite\n```\n\n系统会根据您的操作系统自动安装特定平台所需的依赖项。\n\n## 快速入门\n\n如前所述，您可以通过 Python 或 Robot Framework 使用 RPALite。以下是一些示例：\n\n### Python\n\n#### Windows 示例\n\n以下是使用 RPALite 操作 Windows 记事本的示例：\n\n```python\nfrom RPALite import RPALite\nrpalite = RPALite()\n\n# 显示桌面\nrpalite.show_desktop()\n\n# 运行记事本并输入一些文本\nrpalite.run_command(\"notepad.exe\")\nrpalite.input_text(\"这是一个使用 RPALite 的演示。\\n\")\n\n# 查找记事本应用并关闭它\napp = rpalite.find_application(\".*Notepad\")\nrpalite.close_app(app)\n```\n\n### 高级键盘输入示例\n\n```python\n# 简单文本输入\nrpalite.send_keys(\"欢迎使用 RPALite\")\n\n# 特殊键\nrpalite.send_keys(\"{ENTER}\")\nrpalite.send_keys(\"{ESC}\")\n\n# 组合键\nrpalite.send_keys(\"^c\")          # Control+C\nrpalite.send_keys(\"%{F4}\")       # Alt+F4\nrpalite.send_keys(\"+(abc)\")      # Shift+ABC（大写）\n```\n\n### Robot Framework\n\n#### Windows 示例\n\n以下是使用 RPALite 操作 Windows 记事本的示例：\n\n```robotframework\n*** Settings ***\nLibrary    RPALite\n\n*** Test Cases ***\n测试记事本\n    Send Keys    {VK_LWIN down}D{VK_LWIN up}\n    Run Command    notepad.exe\n    ${app} =     Find Application    .*Notepad\n    Maximize Window    ${app}\n    Input Text    这是一个使用 RPALite 的演示。\n    Close App    ${app}\n```\n\n## 贡献指南\n\n如果您想为 RPALite 贡献代码，欢迎提交 Pull Request。请确保您的代码风格与现有代码库一致，并通过 tests 目录中的所有测试。此外，请确保为任何新增或修改的代码更新单元测试。\n\n- GitHub 仓库：https://github.com/jieliu2000/RPALite\n- Gitee 仓库：https://gitee.com/jieliu2000/rpalite\n- Gitcode 仓库：https://gitcode.com/jieliu2000/rpalite\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjieliu2000%2Frpalite","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjieliu2000%2Frpalite","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjieliu2000%2Frpalite/lists"}