Metadata-Version: 2.1
Name: rpaframework
Version: 9.4.0
Summary: A collection of tools and libraries for RPA
Home-page: https://rpaframework.org/
License: Apache-2.0
Keywords: robotframework,rpa,automation
Author: RPA Framework
Author-email: rpafw@robocorp.com
Requires-Python: >=3.6,<4.0
Classifier: Development Status :: 3 - Alpha
Classifier: Framework :: Robot Framework
Classifier: Framework :: Robot Framework :: Library
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Provides-Extra: aws
Provides-Extra: cv
Provides-Extra: google
Provides-Extra: playwright
Requires-Dist: PySocks (>=1.5.6,!=1.5.7,<2.0.0)
Requires-Dist: amazon-textract-response-parser (>=0.1.1,<0.2.0); extra == "aws"
Requires-Dist: boto3 (>=1.13.4,<2.0.0); extra == "aws"
Requires-Dist: chardet (>=3.0.0,<4.0.0)
Requires-Dist: click (>=7.1.2,<8.0.0)
Requires-Dist: comtypes (==1.1.7); sys_platform == "win32"
Requires-Dist: cryptography (>=3.3.1,<4.0.0)
Requires-Dist: dataclasses (>=0.7,<0.8); python_version >= "3.6" and python_version < "3.7"
Requires-Dist: docutils
Requires-Dist: exchangelib (>=3.1.1,<4.0.0)
Requires-Dist: google-api-python-client (>=1.12.3,<2.0.0); extra == "google"
Requires-Dist: google-auth-httplib2 (>=0.0.4,<0.0.5); extra == "google"
Requires-Dist: google-auth-oauthlib (>=0.4.1,<0.5.0); extra == "google"
Requires-Dist: google-cloud-language (>=1.3.0,<2.0.0); extra == "google"
Requires-Dist: google-cloud-speech (>=1.3.2,<2.0.0); extra == "google"
Requires-Dist: google-cloud-storage (>=1.28.1,<2.0.0); extra == "google"
Requires-Dist: google-cloud-texttospeech (>=1.0.1,<2.0.0); extra == "google"
Requires-Dist: google-cloud-translate (>=2.0.1,<3.0.0); extra == "google"
Requires-Dist: google-cloud-videointelligence (>=1.14.0,<2.0.0); extra == "google"
Requires-Dist: google-cloud-vision (>=1.0.0,<2.0.0); extra == "google"
Requires-Dist: graphviz (>=0.13.2,<0.14.0)
Requires-Dist: grpcio (==1.33.2); extra == "playwright" or extra == "google"
Requires-Dist: jsonpath-ng (>=1.5.2,<2.0.0)
Requires-Dist: mss (>=6.0.0,<7.0.0)
Requires-Dist: netsuitesdk (>=1.1.0,<2.0.0)
Requires-Dist: notifiers (>=1.2.1,<2.0.0)
Requires-Dist: openpyxl (>=3.0.3,<4.0.0)
Requires-Dist: pillow (>=8.0.1,<9.0.0)
Requires-Dist: psutil (>=5.7.0,<6.0.0); sys_platform == "win32"
Requires-Dist: pynput-robocorp-fork (>=2.0.0,<3.0.0)
Requires-Dist: pyperclip (>=1.8.0,<2.0.0)
Requires-Dist: python-xlib (>=0.17); sys_platform == "linux"
Requires-Dist: pywin32 (>=300,<301); python_version < "3.7.6" and sys_platform == "win32" or python_version > "3.7.6" and python_version < "3.8.1" and sys_platform == "win32" or python_version > "3.8.1" and sys_platform == "win32"
Requires-Dist: pywinauto (>=0.6.8,<0.7.0); python_version < "3.7.6" and sys_platform == "win32" or python_version > "3.7.6" and python_version < "3.8.1" and sys_platform == "win32" or python_version > "3.8.1" and sys_platform == "win32"
Requires-Dist: robotframework (>=4.0,<5.0)
Requires-Dist: robotframework-browser (>=2.5.0,<3.0.0); (python_version >= "3.7" and python_version < "4.0") and (extra == "playwright")
Requires-Dist: robotframework-pythonlibcore (>=2.1.0,<3.0.0)
Requires-Dist: robotframework-requests (>=0.7.0,<0.8.0)
Requires-Dist: robotframework-sapguilibrary (>=1.1,<2.0); sys_platform == "win32"
Requires-Dist: robotframework-seleniumlibrary (>=5.1.0,<6.0.0)
Requires-Dist: robotframework-seleniumtestability (>=1.1.0,<2.0.0)
Requires-Dist: rpaframework-core (>=6.1.0,<7.0.0)
Requires-Dist: rpaframework-pdf (>=0.5.0,<0.6.0)
Requires-Dist: rpaframework-recognition (>=0.7.0,<0.8.0); extra == "cv"
Requires-Dist: selenium (>=3.141.0,<4.0.0)
Requires-Dist: simple_salesforce (>=1.0.0,<2.0.0)
Requires-Dist: tweepy (>=3.8.0,<4.0.0)
Requires-Dist: xlrd (>=2.0.1,<3.0.0)
Requires-Dist: xlutils (>=2.0.0,<3.0.0)
Requires-Dist: xlwt (>=1.3.0,<2.0.0)
Project-URL: Documentation, https://rpaframework.org/
Project-URL: Repository, https://github.com/robocorp/rpaframework
Description-Content-Type: text/x-rst

RPA Framework
=============

.. contents:: Table of Contents
   :local:
   :depth: 1

.. include-marker

Introduction
------------

`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:**

- 100% Open Source
- Sponsored by Robocorp_
- Optimized for `Robocorp Cloud`_ and `Robocorp Lab`_
- Accepting external contributions

.. _Robot Framework: https://robotframework.org
.. _Robot Framework Foundation: https://robotframework.org/foundation/
.. _Python: https://python.org
.. _Robocorp: https://robocorp.com
.. _Robocorp Documentation: https://robocorp.com/docs/
.. _Robocorp Cloud: https://robocorp.com/docs/product-manuals/robocorp-cloud/robocorp-cloud
.. _Robocorp Lab: https://robocorp.com/docs/product-manuals/robocorp-lab/robocorp-lab-overview

Links
^^^^^

- Homepage: `<https://www.github.com/robocorp/rpaframework/>`_
- Documentation: `<https://rpaframework.org/>`_
- PyPI: `<https://pypi.org/project/rpaframework/>`_
- Release notes: `<https://rpaframework.org/releasenotes.html>`_

------------

.. image:: https://github.com/robocorp/rpaframework/workflows/main/badge.svg
   :target: https://github.com/robocorp/rpaframework/actions?query=workflow%3Amain
   :alt: Status

.. image:: https://img.shields.io/pypi/v/rpaframework.svg?label=version
   :target: https://pypi.python.org/pypi/rpaframework
   :alt: Latest version

.. image:: https://img.shields.io/pypi/l/rpaframework.svg
   :target: http://www.apache.org/licenses/LICENSE-2.0.html
   :alt: License

Libraries
---------

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                            |
+----------------------------+----------------------------------------------+
| `JSON`_                    | Manipulate JSON objects                      |
+----------------------------+----------------------------------------------+
| `Notifier`_                | Notify messages using different services     |
+----------------------------+----------------------------------------------+
| `Outlook.Application`_     | Control the Outlook desktop application      |
+----------------------------+----------------------------------------------+
| `PDF`_                     | Read and create PDF documents                |
+----------------------------+----------------------------------------------+
| `Robocloud.Items`_         | Use the Robocloud Work Items API             |
+----------------------------+----------------------------------------------+
| `Robocloud.Secrets`_       | Use the Robocloud 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                        |
+----------------------------+----------------------------------------------+
| `Word.Application`_        | Control the Word desktop application         |
+----------------------------+----------------------------------------------+

.. _Archive: https://rpaframework.org/libraries/archive/
.. _Browser.Playwright: https://rpaframework.org/libraries/browser_playwright/
.. _Browser.Selenium: https://rpaframework.org/libraries/browser_selenium/
.. _Cloud.AWS: https://rpaframework.org/libraries/cloud_aws/
.. _Cloud.Azure: https://rpaframework.org/libraries/cloud_azure/
.. _Cloud.Google: https://rpaframework.org/libraries/cloud_google/
.. _Crypto: https://rpaframework.org/libraries/crypto/
.. _Database: https://rpaframework.org/libraries/database/
.. _Desktop: https://rpaframework.org/libraries/desktop/
.. _Desktop.Clipboard: https://rpaframework.org/libraries/desktop_clipboard/
.. _Desktop.Operatingsystem: https://rpaframework.org/libraries/desktop_operatingsystem/
.. _Desktop.Windows: https://rpaframework.org/libraries/desktop_windows/
.. _Dialogs: https://rpaframework.org/libraries/dialogs/
.. _Email.Exchange: https://rpaframework.org/libraries/email_exchange/
.. _Email.ImapSmtp: https://rpaframework.org/libraries/email_imapsmtp/
.. _Excel.Application: https://rpaframework.org/libraries/excel_application/
.. _Excel.Files: https://rpaframework.org/libraries/excel_files/
.. _FileSystem: https://rpaframework.org/libraries/filesystem/
.. _FTP: https://rpaframework.org/libraries/ftp/
.. _HTTP: https://rpaframework.org/libraries/http/
.. _Images: https://rpaframework.org/libraries/images/
.. _JSON: https://rpaframework.org/libraries/json/
.. _Notifier: https://rpaframework.org/libraries/notifier/
.. _Outlook.Application: https://rpaframework.org/libraries/outlook_application/
.. _PDF: https://rpaframework.org/libraries/pdf/
.. _Robocloud.Items: https://rpaframework.org/libraries/robocloud_items/
.. _Robocloud.Secrets: https://rpaframework.org/libraries/robocloud_secrets/
.. _Salesforce: https://rpaframework.org/libraries/salesforce/
.. _SAP: https://rpaframework.org/libraries/sap/
.. _Tables: https://rpaframework.org/libraries/tables/
.. _Tasks: https://rpaframework.org/libraries/tasks/
.. _Twitter: https://rpaframework.org/libraries/twitter/
.. _Word.Application: https://rpaframework.org/libraries/word_application/

Installation
------------

If you already have Python_ and `pip <http://pip-installer.org>`_ installed,
you can use:

``pip install rpaframework``

To install all extra packages, you can use:

``pip install rpaframework[aws,cv,google]``

.. note:: Python 3.6 or higher is required

Example
-------

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

.. code:: robotframework

    *** 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_:

.. code:: 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)

Support and contact
-------------------

- `rpaframework.org <https://rpaframework.org/>`_ for library documentation
- `Robocorp Documentation`_ for guides and tutorials
- **#rpaframework** channel in `Robot Framework Slack`_ if you
  have open questions or want to contribute
- `Robocorp Forum`_ for discussions about RPA
- Communicate with your fellow Software Robot Developers and Robocorp experts
  at `Robocorp Developers Slack`_

.. _Robot Framework Slack: https://robotframework-slack-invite.herokuapp.com/
.. _Robocorp Forum: https://forum.robocorp.com
.. _Robocorp Developers Slack: https://robocorp-developers.slack.com

Contributing
------------

Found a bug? Missing a critical feature? Interested in contributing?
Head over to the `Contribution guide <https://rpaframework.org/contributing/guide.html>`_
to see where to get started.

License
-------

This project is open-source and licensed under the terms of the
`Apache License 2.0 <http://apache.org/licenses/LICENSE-2.0>`_.

