Une fois au travail, on m'a confié une tâche de R&D pour créer un bot qui « parcourrait » le site, sélectionnerait des produits, remplirait des formulaires et réglerait les achats. A cette époque, nous écrivions une partie du système Antifraude qui permettait de détecter les bots dans le navigateur. Et à partir de ce moment, tout a commencé...
Table des matières
RPA en un coup d'œil
Projets open source
Services payants
Automatisation des tests
RPA vs automatisation des tests
Scraping de sites Web et RPA
BPM et RPA
RPA sûre...
Un exemple de bot fonctionnant en Python
Comment détecter un bot ?
conclusions
RPA en un coup d'œil
RPA (Robotic process automation) - , ( , , .), , , ... - , . , .
:
RPA - , « » , , , . RPA -, .
RPA:

Open source
open source , .. .
:

, , . Python , , .
Selenium & rpaframework
2 1 .. : , , . : , fingerprint . .
Selenium
Selenium WebDriver — -. Web-, . .
Selenium IDE - ; Chrome Firefox, .
RPA Framework
RPA Framework - RPA, Robot Framework Python. Selenium Playwright, Chromium, Firefox WebKit API. Robocorp .
3 in 1 (Desktop / Web / Mobile)
Robocorp
Robocorp RPA , . , .
TagUI
TagUI - RPA AI Singapore, . TagUI . , Windows, macOS Linux.

RPA Framework, Playwright, selector Selenium, .
Selenium RPA Framework
Selenium
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from webdriver_manager.chrome import ChromeDriverManager
driver = webdriver.Chrome(executable_path=ChromeDriverManager().install())
driver.get("https://www.google.com/")
elem = driver.find_element_by_xpath("/html/body/div[1]/div[3]/form/div[1]/div[1]/div[1]/div/div[2]/input")
elem.send_keys("Python news")
elem.send_keys(Keys.RETURN)
driver.close()
RPA Framework
from RPA.Browser.Playwright import Playwright
from Browser.utils.data_types import KeyAction
lib = Playwright()
lib.open_browser("https://www.google.com/")
lib.fill_text(selector="input", txt="Python news")
lib.keyboard_key(KeyAction.press, "Enter")
lib.close_browser()
RPA Framework API.
. Enterprise . , RPA . , , RPA 100 000 , .

RPA Everest Group RPA 2020:

Everest RPA , . Everest UiPath, Automation Anywhere, Blue Prism, Intellibot Nividous .
UiPath vs Automation Anywhere vs Blue Prism
Blue Prism, 2001 , RPA «Robotic Process Automation». UiPath UiPath «DeskOver». 2015 RPA-.
RPA , , :

Blue Prism . - , RPA.
, UiPath Automation Anywhere ( ) , . RPA «» , .
RPA - G2, . 21 :
UiPath - 4.6 / 5 4722
Automation Anywhere 4,5 / 5 4310
Blue Prism 4,4 / 5 158
UiPath RPA?
UiPath RPA , . , RPA , , , AI Fabric, RPA SaaS .
UiPath RPA - 3-4 , RPA.
UiPath:
Long Running Workflows
Machine Learning and Predictive Analytics
Seamless Interconnectivity
Process Document Understanding
Citizen Development
Customer Satisfaction
Flexible Licensing Model and Low Cost of Entry
: https://www.auxis.com/blog/top-rpa-tools
RPA G2, (, , .). G2 , :

RPA
UiPath
UiPath - .
UiPath . - . Quadrant Review Gartner, UiPath , UiPath , RPA.

Automation Anywhere
Automation Anywhere, RPA, - RPA, -. RPA, , , .

Blue Prism
Blue Prism, RPA, .
Blue Prism RPA Fortune. Blue Prism . , RPA. .

Microsoft Power Automate
Microsoft Power Automate RPA. Microsoft Power Automate . Microsoft . .

WinActor
WinActor - RPA, NTT Group. , .

Test Automation
.
, (, Selenium), . , , , , .
Automation Testing Tools
RPA.
:
|
Open source |
|
Selenium |
+ |
|
Appium |
+ |
|
SoapUI |
+ |
|
TestProject |
+ |
|
Cerberus Testing |
+ |
|
Katalon Studio |
|
+ |
IBM Rational Functional Tester |
|
+ |
Telerik Test Studio |
|
+ |
TestComplete |
|
+ |
Ranorex |
|
+ |
Kobiton |
|
+ |
Subject7 |
|
+ |
HPE Unified Functional Testing (UFT) |
|
+ |
:

RPA vs Test Automation
: .
RPA Test Automation . , .
:
.
:
, , (SUT).
RPA , , , .
RPA , .
RPA
, , , RPA (, Octoparse).
Process Bots VS Search Bots

RPA:
Low Code UX
UX
-
-
- ( , ..)
:
-
HTML ( ; UPC )
(, , ..)
?
, , - RPA , , .
RPA . . . , , .
. . RPA . , -, RPA , , - html .
AI. , Crawlbot Diffbot, , . JSON CSV, . , , RPA. !
Scrape.do
Scrape.do - -, , API- - . Scrape.do . Scrape.do - -.
Scrapingdog
Scrapingdog - -, -, , CAPTCHA. HTML- - API. Scraping dog - API LinkedIn.
ParseHub
ParseHub - -, -. . , , , / , CSV JSON. .
Diffbot
Diffbot - -, , -. - . Analyze API , , , .
Octoparse
Octoparse - . IP- IP-. . , . CSV, Excel API.
ScrapingBee
ScrapingBee - . -, , Chrome.
Luminati
Luminati - - . , .
Scraper API
Scraper API - API -. -, CAPTCHA, HTML- -, API.
Scrapy
- Scrapy. Scrapy - , -. - Python.
Import.io
- -, , . Import.io - CSV. , 1000 API- . Mac OS X, Linus Windows.
BPM RPA
BPM (Business Process Management, -) – , -.
BPM - (, , ..).
BPM- — -.
, , . , , , , - .
- : , . RPA - , .

BPM RPA
Camunda
Camunda , , RPA- , . , Camunda , RPA API / .
:
RPA
RPA
RPA
ELMA
BPM- ELMA . - ELMA — . .
RPA + BPM:
.
.
.
Customer Experience .
ProcessMaker
ProcessMaker - - (BPM) . .
RPA...
RPA
RPA? , . , ( , .), , , , . , .
, :
: . , .
: .
: , . , , , -.
: malware , .
: .
, , , .
:
: - , .
RPA
Regardons du point de vue d'un pentester. Nous pouvons utiliser RPA pour créer un script qui vérifiera cycliquement les pages pour les vulnérabilités. En pensant plus loin, nous pouvons entraîner toute une armée de robots pour simuler des attaques sur diverses API et sites. Il est clair que tout ne peut pas être automatisé, mais vous pouvez essayer les scénarios de base qui se répètent pour chaque site.
À suivre...
Dans le prochain article, nous allons créer notre propre bot, examiner quels sont les algorithmes de détection des bots, écrits en Selenium et utilisant RPA. Créons notre propre algorithme et résumons.