Skip to content

Collection of open-source libraries and tools for Robotic Process Automation (RPA), designed to be used with both Robot Framework and Python

License

Notifications You must be signed in to change notification settings

rooky-c3bo/rpaframework

 
 

Repository files navigation

RPA Framework

RPA Framework is a collection of open-source libraries and tools for Robotic Process Automation (RPA), and it is designed to be used with both Robot Framework and Python. The goal is to offer well-documented and actively maintained core libraries for Software Robot Developers.

Learn more about RPA at Robocorp Documentation.

The project is:

Links


Status rpaframework License
rpaframework latest version rpaframework-core latest version rpaframework-dialogs latest version rpaframework-google latest version rpaframework-pdf latest version rpaframework-recognition latest version rpaframework-windows latest version

The RPA Framework project currently includes the following libraries:

Archive Archiving TAR and ZIP files
Browser.Selenium Control browsers and automate the web
Browser.Playwright Newer way to control browsers
Cloud.AWS Use Amazon AWS services
Cloud.Azure Use Microsoft Azure services
Cloud.Google Use Google Cloud services
Crypto Common hashing and encryption operations
Database Interact with databases
Desktop Cross-platform desktop automation
Desktop.Clipboard Interact with the system clipboard
Desktop.OperatingSystem Read OS information and manipulate processes
Desktop.Windows Automate Windows desktop applications
Dialogs Request user input during executions
Email.Exchange E-Mail operations (Exchange protocol)
Email.ImapSmtp E-Mail operations (IMAP & SMTP)
Excel.Application Control the Excel desktop application
Excel.Files Manipulate Excel files directly
FileSystem Read and manipulate files and paths
FTP Interact with FTP servers
HTTP Interact directly with web APIs
Images Manipulate images
JavaAccessBridge Control Java applications
JSON Manipulate JSON objects
Notifier Notify messages using different services
Outlook.Application Control the Outlook desktop application
PDF Read and create PDF documents
Robocorp.Process Use the Robocorp Process API
Robocorp.WorkItems Use the Robocorp Work Items API
Robocorp.Vault Use the Robocorp Secrets API
Salesforce Salesforce operations
SAP Control SAP GUI desktop client
Tables Manipulate, sort, and filter tabular data
Tasks Control task execution
Twitter Twitter API interface
Windows Alternative library for Windows automation
Word.Application Control the Word desktop application

Learn about installing Python packages at Installing Python Packages.

Default installation method with Robocorp Developer Tools using conda.yaml:

channels:
  - conda-forge
dependencies:
  - python=3.7.5
  - pip=20.1
  - pip:
    - rpaframework==12.0.0

To install all extra packages (including Playwright dependencies), you can use:

channels:
  - conda-forge
dependencies:
  - python=3.7.5
  - tesseract=4.1.1
  - pip=20.1
  - nodejs=14.17.4
  - pip:
    - rpaframework[aws]==12.0.0
    - rpaframework-google==1.0.0
    - rpaframework-recognition==1.0.0
    - rpaframework-windows==1.2.1
    - robotframework-browser==10.0.3
rccPostInstall:
  - rfbrowser init

Separate installation of PDF and Dialogs libraries without main rpaframework:

channels:
  - conda-forge
dependencies:
  - python=3.7.5
  - pip=20.1
  - pip:
    - rpaframework-dialogs==0.4.2  # included in the rpaframework by default
    - rpaframework-pdf==1.26.11  # included in the rpaframework by default

Note

Python 3.6 or higher is required

After installation the libraries can be directly imported inside Robot Framework:

*** Settings ***
Library    RPA.Browser.Selenium

*** Tasks ***
Login as user
    Open available browser    https://example.com
    Input text    id:user-name    ${USERNAME}
    Input text    id:password     ${PASSWORD}

The libraries are also available inside Python:

from RPA.Browser.Selenium import Selenium

lib = Selenium()

lib.open_available_browser("https://example.com")
lib.input_text("id:user-name", username)
lib.input_text("id:password", password)

Found a bug? Missing a critical feature? Interested in contributing? Head over to the Contribution guide to see where to get started.

This project is open-source and licensed under the terms of the Apache License 2.0.

About

Collection of open-source libraries and tools for Robotic Process Automation (RPA), designed to be used with both Robot Framework and Python

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 92.7%
  • RobotFramework 5.3%
  • Makefile 1.1%
  • Java 0.3%
  • CSS 0.3%
  • HTML 0.2%
  • Other 0.1%