Estamos buscando melhorar nosso uso de palavras-chave para cobrir situações em que o desenvolvedor possa estar tendo dificuldades para escrever tarefas para um robô sem problemas. Descreva a situação em que a velocidade de implementação diminui devido à falta de uma sintaxe mais fácil.
Comente AQUI
RPA Framework é uma coleção de bibliotecas e ferramentas de código aberto para Robotic Process Automation (RPA) e foi projetado para ser usado com Robot Framework e Python. O objetivo é oferecer bibliotecas básicas bem documentadas e mantidas ativamente para desenvolvedores de robôs de software.
Saiba mais sobre RPA na Documentação da Robocorp.
O projeto é:
Dos pacotes acima, rpaframework -core
e rpaframework -recognition
são pacotes de suporte, que por si só não contêm nenhuma biblioteca.
O projeto RPA Framework atualmente inclui as seguintes bibliotecas:
O x
na coluna PACKAGE significa que a biblioteca está incluída no pacote rpaframework e, por exemplo. x,pdf
significa que a biblioteca RPA.PDF
é fornecida nos pacotes rpaframework e rpaframework -pdf .
NOME DA BIBLIOTECA | DESCRIÇÃO | PACOTE |
Arquivo | Arquivando arquivos TAR e ZIP | x |
Assistente | Exibir informações para um usuário e solicitar entrada. | assistente |
Navegador.Selenium | Controle navegadores e automatize a web | x |
Navegador.Dramaturgo | Maneira mais recente de controlar navegadores | especial (mais abaixo) |
Calendário | Para manipulações de data e hora | x |
Nuvem.AWS | Utilize os serviços Amazon AWS | x, ah |
Nuvem.Azure | Utilize os serviços do Microsoft Azure | x |
Nuvem.Google | Usar os serviços do Google Cloud | |
Criptografia | Operações comuns de hash e criptografia | x |
Banco de dados | Interaja com bancos de dados | x |
Área de trabalho | Automação de desktop multiplataforma | x |
Área de trabalho.Área de transferência | Interaja com a área de transferência do sistema | x |
Desktop.Sistema Operacional | Leia informações do sistema operacional e manipule processos | x |
DocumentAI | Wrapper de processamento inteligente de documentos | x |
DocumentAI.Base64AI | Serviço de processamento inteligente de documentos | x |
DocumentAI.Nanonets | Serviço de processamento inteligente de documentos | x |
E-mail.Exchange | Operações de e-mail (protocolo Exchange) | x |
E-mail.ImapSmtp | Operações de e-mail (IMAP e SMTP) | x |
Excel.Aplicativo | Controle o aplicativo de desktop Excel | x |
Excel.Arquivos | Manipule arquivos Excel diretamente | x |
Sistema de arquivos | Ler e manipular arquivos e caminhos | x |
FTP | Interaja com servidores FTP | x |
HTTP | Interaja diretamente com APIs da web | x |
Hubspot | Acessar objetos de dados do HubSpot CRM | ponto central |
Imagens | Manipular imagens | x |
JavaAccessBridge | Controlar aplicativos Java | x |
JSON | Manipular objetos JSON | x |
AMF | Autenticar usando senhas de uso único (OTP) e OAuth2 | x |
Notificador | Notificar mensagens usando diferentes serviços | x |
OpenAI | Serviço de Inteligência Artificial | aberto |
Outlook.Aplicativo | Controlar o aplicativo de desktop Outlook | x |
Ler e criar documentos PDF | x,pdf | |
Robocorp.Processo | Use a API de processo Robocorp | x |
Robocorp.WorkItems | Use a API de itens de trabalho da Robocorp | x |
Robocorp.Vault | Use a API Robocorp Secrets | x |
Robocorp.Armazenamento | Use a API Robocorp Asset Storage | x |
Força de vendas | Operações do Salesforce | x |
SEIVA | Controlar o cliente de desktop SAP GUI | x |
Folha inteligente | Acessar planilhas do Smartsheet | x |
Tabelas | Manipule, classifique e filtre dados tabulares | x |
Tarefas | Controlar a execução de tarefas | x |
Interface API do Twitter | x | |
Windows | Biblioteca alternativa para automação do Windows | x, janelas |
Palavra.Aplicativo | Controlar o aplicativo Word para desktop | x |
O RPA.Browser.Playwright no momento requer instalação especial, devido ao tamanho do pacote e à etapa de pós-instalação, ele precisa ser totalmente instalado.
Conda.yaml mínimo necessário para instalar o Playwright:
channels :
- conda-forge
dependencies :
- python=3.9.16
- nodejs=16.14.2
- pip=22.1.2
- pip :
- robotframework-browser==17.2.0
- rpaframework ==24.1.2
rccPostInstall :
- rfbrowser init
Saiba mais sobre como instalar pacotes Python em Instalando pacotes Python.
Método de instalação padrão com Robocorp Developer Tools usando conda.yaml:
channels :
- conda-forge
dependencies :
- python=3.9.16
- pip=22.1.2
- pip :
- rpaframework ==24.1.2
Para instalar todos os pacotes extras (incluindo dependências do Playwright), você pode usar:
channels :
- conda-forge
dependencies :
- python=3.9.16
- tesseract=4.1.1
- nodejs=16.14.2
- pip=22.1.2
- pip :
- robotframework-browser==17.2.0
- rpaframework ==24.1.2
- rpaframework -aws==5.2.8
- rpaframework -google==7.0.3
- rpaframework -recognition==5.1.2
rccPostInstall :
- rfbrowser init
Instalação separada de bibliotecas AWS, PDF e Windows sem o rpaframework
principal:
channels :
- conda-forge
dependencies :
- python=3.9.16
- pip=22.1.2
- pip :
- rpaframework -aws==5.2.8 # included in the rpaframework as an extra
- rpaframework -pdf==7.1.5 # included in the rpaframework by default
- rpaframework -windows==7.3.2 # included in the rpaframework by default
Método de instalação com pip usando Python venv:
python -m venv .venv
source .venv/bin/activate
pip install rpaframework
Observação
Python 3.8 ou superior é necessário
Após a instalação as bibliotecas podem ser importadas diretamente dentro do 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 }
As bibliotecas também estão disponíveis dentro do 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 )
Encontrou um bug? Faltando um recurso crítico? Interessado em contribuir? Acesse o guia de Contribuição para ver por onde começar.
O desenvolvimento do repositório é baseado em Python e requer no mínimo a versão 3.8+ do Python instalada na máquina de desenvolvimento. A versão padrão do Python usada no modelo Robocorp Robot é 3.9.16, portanto, é uma boa escolha para a versão a ser instalada. As versões não recomendadas são 3.7.6 e 3.8.1, pois apresentam problemas com algumas dependências relacionadas ao rpaframework
. No momento, as versões mais recentes do Python a partir de 3.11 também não são recomendadas, porque algumas das dependências podem causar problemas.
As ferramentas de desenvolvimento de repositório são baseadas em poesia e invocação. Poesia é a ferramenta subjacente usada para compilar, construir e executar o pacote. Invoke é usado para fins de script, por exemplo, para tarefas de linting, teste e publicação.
Antes de escrever qualquer código, leia e reconheça nosso extenso Guia do Desenvolvedor.
Primeiros passos para começar a desenvolver:
poetry config virtualenvs.path null
poetry config virtualenvs.in-project true
poetry config repositories.devpi " https://devpi.robocorp.cloud/ci/test "
git clonar o repositório
crie um novo branch Git ou mude para o branch correto ou permaneça no branch master
poetry install
que instala o pacote com suas dependências no diretório .venv do pacote, por exemplo packages/main/.venv
se estiver testando no Robocorp Robot que está usando devdata/env.json
poetry build
e use o arquivo .whl resultante (no diretório dist/ ) no Robot conda.yamlpoetry build
e envie o arquivo .whl resultante (no diretório dist/ ) para um repositório e use o URL bruto para incluí-lo no Robô conda.yamlpoetry publish --ci
e apontar conda.yaml para usar a versão rpaframework em devpi poetry run python -m robot <ROBOT_ARGS> <TARGET_ROBOT_FILE>
--report NONE --outputdir output --logtitle "Task log"
poetry run python <TARGET_PYTHON_FILE>
invoke lint
para garantir que a formatação do código esteja de acordo com as diretrizes do repositório rpaframework . É possível e provável que a ação do Github falhe se o desenvolvedor não tiver lincado as alterações do código. A formatação do código é baseada em black e flake8 e eles são executados com o invoke lint
.
a documentação da biblioteca pode ser criada na raiz do repositório (o chamado nível de pacote "meta"). A documentação é construída pelas ferramentas docgen usando a versão do projeto instalada localmente, as alterações locais para o pacote principal serão refletidas cada vez que você gerar os documentos, mas se você quiser ver as alterações locais para pacotes opcionais, você deve utilizar invoke install-local --package <package_name>
usando o nome de pacote apropriado (por exemplo, rpaframework -aws
). Isso irá reinstalar esse pacote como uma versão editável local em vez do PyPI. Vários desses pacotes podem ser adicionados repetindo o uso da opção --package
. Para redefinir isso, use invoke install --reset
.
poetry update
e/ou invoke install-local --package <package name>
make docs
docs/build/html/index.html
com o navegador para visualizar as alterações ou execute make local
e navegue até localhost:8000
para visualizar os documentos como uma página da web local ativa. # Before
[ tool . poetry . dependencies ]
python = " ^3.8 "
rpaframework = { path = " packages/main " , extras = [ " cv " , " playwright " , " aws " ] }
rpaframework -google = " ^4.0.0 "
rpaframework -windows = " ^4.0.0 "
# After
[ tool . poetry . dependencies ]
python = " ^3.8 "
rpaframework = { path = " packages/main " , extras = [ " cv " , " playwright " ] }
rpaframework -aws = { path = " packages/aws " }
rpaframework -google = " ^4.0.0 "
rpaframework -windows = " ^4.0.0 "
invoke test
(isso executará testes unittests do Python e testes robotframework definidos no diretório packages tests/ )
poetry run pytest path/to/test.py::test_function
inv testrobot -r <robot_name> -t <task_name>
git commit alterações
git push altera para remoto
crie uma solicitação pull do branch descrevendo as alterações incluídas na descrição
atualize docs/source/releasenotes.rst com alterações (commit e push)
O empacotamento e a publicação são feitos depois que as alterações são mescladas no branch master. Todas as etapas a seguir devem ser executadas no branch master.
invoke lint
e invoke test
poetry update
invoke publish
após a ação do Github no branch master estar toda verdeAlgumas ferramentas recomendadas para desenvolvimento
Visual Studio Code como editor de código com as seguintes extensões:
- Código Robocorp
- Servidor de linguagem Robot Framework
- GitLens
- Extensão Python
GitHub Desktop tornará o gerenciamento de versões menos sujeito a erros
Este projeto é de código aberto e licenciado sob os termos da Licença Apache 2.0.