Renunțăm la platformele RPA plătite și ne bazăm pe OpenSource (OpenRPA)

Introducere

Anterior, pe Habr, a fost discutată foarte detaliat tema Automatizării aplicațiilor GUI desktop pe Python. În acel moment, m-a atras foarte mult acest articol, deoarece el detaliază elemente asemănătoare cu cele din crearea roboților. Și având în vedere că, din cauza activității mele profesionale, mă ocup cu robotizarea proceselor de afaceri ale companiei (RPA — un domeniu în care până de curând nu existau echivalente OpenSource complet funcționale), această temă mi-a fost foarte relevantă.

Cele mai bune soluții IT existente în domeniul RPA (UI Path, Blueprism, Automation Anywhere și altele) au două probleme semnificative:

  • Problema 1: Limitări tehnice ale funcționalității platformei, deoarece scripturile roboților sunt create doar într-o interfață grafică (da, există posibilitatea de a apela cod programatic, dar această capacitate are o serie de restricții)
  • Problema 2: Politica de licențiere extrem de costisitoare pentru vânzarea acestor soluții (Pentru platformele de top aproximativ 8000$ pentru un robot care funcționează constant pe an). Faceți o duzină de roboți pentru a ajunge la o sumă anuală considerabilă sub formă de plăți de licență.

Dat fiind că această piață este foarte tânără și foarte dinamică, deja acum puteți găsi în Google 10+ soluții de robotizare cu diverse politici de preț. Dar până de curând, găsirea unei soluții OpenSource complet funcționale era imposibilă. Este vorba exact despre o soluție OpenSource complet funcțională, deoarece soluțiile de robotizare parțiale se pot găsi, dar acestea ofereau doar o parte din tehnologiile cheie pe care se bazează conceptul RPA.

Pe ce se bazează, deci, conceptul RPA?

RPA (Automatizarea Proceselor Robotizate) este una dintre cele mai rentabile forme de a atinge un obiectiv. Deoarece RPA nu presupune renunțarea la diversele sisteme legate de companie, ci crearea unui script necesar de automatizare pe baza acestor sisteme — acest lucru oferă beneficii în ceea ce privește viteza de dezvoltare (deoarece nu este necesar să refacem zoo-ul existent de sisteme), dar și în ceea ce privește rezultatul de afaceri (economisirea PSHE/FTE, creșterea veniturilor companiei, reducerea cheltuielilor companiei).

La baza instrumentelor RPA se află următoarele tehnologii:

  • gestionarea paginilor web deschise în browser;
  • managementul aplicațiilor GUI desktop deschise;
  • controlul mouse-ului și al tastaturii (apăsări de taste, taste rapide, butoane ale mouse-ului, mișcarea cursorului);
  • căutarea elementelor grafice pe ecranul desktop-ului pentru aplicarea de acțiuni ulterioare cu mouse-ul și/sau tastatura;

Prin experiența noastră practică de ani de zile, am reușit să demonstrăm că acest set de tehnologii permite robotizarea aproape oricărui proces de afaceri în care nu este nevoie de un element de recunoaștere/aplicare a inteligenței artificiale (în aceste cazuri este necesar să conectăm robotul la bibliotecile corespunzătoare disponibile în lumea IT existentă). Lipsa oricăruia dintre instrumentele enumerate mai sus afectează semnificativ capacitățile RPA.

Toate instrumentele RPA pot fi găsite pe internet. Ce le lipsește, așadar?

Le lipsește cel mai important lucru — integritatea lor. Integritatea care va permite realizarea efectului sinergic din utilizarea diferitelor instrumente (web, gui, mouse, tastatură) într-un singur script de robot, ceea ce este adesea o necesitate (după cum arată practica) în timpul dezvoltării. Această capacitate cheie este oferită de toate platformele RPA de top, iar acum această capacitate este oferită de prima platformă OpenSource RPA OpenRPA

Cum funcționează OpenRPA?

OpenRPA — este un proiect OpenSource bazat pe limbajul de programare Python 3, care constă din cele mai bune biblioteci python existente, care permit realizarea instrumentarului necesar platformei RPA (lista principalelor instrumente RPA se poate vedea mai sus).

Lista principalelor biblioteci:

  • pywinauto;
  • selenium;
  • keyboard;
  • pyautogui

Deoarece toate bibliotecile nu sunt conștiente de existența uneia față de cealaltă, OpenRPA are implementată o funcție crucială a platformei RPA, care le permite să fie utilizate împreună. Acest lucru se manifestă în mod evident atunci când se utilizează biblioteca pywinauto pentru controlul aplicațiilor GUI desktop. În acest domeniu, funcționalitatea bibliotecii a fost extinsă la un nivel de funcționalitate care este oferit în cele mai bune platforme RPA (selectori pentru aplicații GUI, independența de arhitectura de biți, studioul de creare a selectorului etc.).

Concluzie

Lumea IT modernă de astăzi este atât de deschisă pentru toți, încât este greu de imaginat că mai există domenii în care predomină doar soluțiile cu licență plătită. Deoarece această politică de licențiere limitează foarte mult dezvoltarea acestui domeniu, sper că vom putea schimba această situație: astfel încât orice companie să își permită RPA; astfel încât colegii noștri din IT să poată găsi cu ușurință un loc de muncă în RPA, indiferent de situația economică din regiunile lor (astăzi, regiunile cu o economie slabă nu pot să își permită RPA).

Dacă această temă va fi de interes pentru dumneavoastră, pot elabora un tutorial special pentru Habr despre utilizarea OpenRPA - scrieți în comentarii.

Vă mulțumesc tuturor și vă doresc o zi bună!

Sursa: habr.com

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster