Портал документации на Русском языке!

dev-linux v1.2.13
Ivan Maslov 2 years ago
parent adb88c41e3
commit 1a58558759

@ -1,6 +1,6 @@
Metadata-Version: 2.1 Metadata-Version: 2.1
Name: pyOpenRPA Name: pyOpenRPA
Version: 1.2.12 Version: 1.2.13
Summary: First open source RPA platform for business Summary: First open source RPA platform for business
Home-page: https://pyopenrpa.ru/ Home-page: https://pyopenrpa.ru/
Author: Ivan Maslov Author: Ivan Maslov

@ -1,9 +1,9 @@
pyOpenRPA-1.2.12.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 pyOpenRPA-1.2.13.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
pyOpenRPA-1.2.12.dist-info/METADATA,sha256=AmdWISfrdsF9DvjBrn42JJUXBb-TLln5OFBWKxX0VaE,4111 pyOpenRPA-1.2.13.dist-info/METADATA,sha256=HrNqM4-bPHXjqazFT4215H6pPafnYdCqattouxZIzVc,4111
pyOpenRPA-1.2.12.dist-info/RECORD,, pyOpenRPA-1.2.13.dist-info/RECORD,,
pyOpenRPA-1.2.12.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 pyOpenRPA-1.2.13.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
pyOpenRPA-1.2.12.dist-info/WHEEL,sha256=qB97nP5e4MrOsXW5bIU5cUn_KSVr10EV0l-GCHG9qNs,97 pyOpenRPA-1.2.13.dist-info/WHEEL,sha256=qB97nP5e4MrOsXW5bIU5cUn_KSVr10EV0l-GCHG9qNs,97
pyOpenRPA-1.2.12.dist-info/top_level.txt,sha256=RPzwQXgYBRo_m5L3ZLs6Voh8aEkMeT29Xsul1w1qE0g,10 pyOpenRPA-1.2.13.dist-info/top_level.txt,sha256=RPzwQXgYBRo_m5L3ZLs6Voh8aEkMeT29Xsul1w1qE0g,10
pyOpenRPA/.idea/inspectionProfiles/profiles_settings.xml,sha256=YXLFmX7rPNGcnKK1uX1uKYPN0fpgskYNe7t0BV7cqkY,174 pyOpenRPA/.idea/inspectionProfiles/profiles_settings.xml,sha256=YXLFmX7rPNGcnKK1uX1uKYPN0fpgskYNe7t0BV7cqkY,174
pyOpenRPA/.idea/misc.xml,sha256=V-fQnOz-bYEZULgfbFgm-8mURphZrKfXMSd0wKjeEyA,188 pyOpenRPA/.idea/misc.xml,sha256=V-fQnOz-bYEZULgfbFgm-8mURphZrKfXMSd0wKjeEyA,188
pyOpenRPA/.idea/modules.xml,sha256=Q__U1JIA2cjxbLRXAv-SfYY00fZA0TNlpkkbY4s3ncg,277 pyOpenRPA/.idea/modules.xml,sha256=Q__U1JIA2cjxbLRXAv-SfYY00fZA0TNlpkkbY4s3ncg,277
@ -26,9 +26,9 @@ pyOpenRPA/LICENSE.pdf,sha256=HEqffy8FIWpylw0zF7k-Wgwd8ppWQT9s9EGBgKV-6G8,321175
pyOpenRPA/Orchestrator/BackwardCompatibility.py,sha256=ABr0RugbBsIGdL5GE_EFC9QndSaKjvrjawvluhUNuMY,37795 pyOpenRPA/Orchestrator/BackwardCompatibility.py,sha256=ABr0RugbBsIGdL5GE_EFC9QndSaKjvrjawvluhUNuMY,37795
pyOpenRPA/Orchestrator/ControlPanel.py,sha256=OzS8HjG__8OZgqhajr8L8owyugXPuSLWHLtXuKdEP78,103 pyOpenRPA/Orchestrator/ControlPanel.py,sha256=OzS8HjG__8OZgqhajr8L8owyugXPuSLWHLtXuKdEP78,103
pyOpenRPA/Orchestrator/Core.py,sha256=OHa3mSC3_wRAizqrWBVjlR6ln4-xVVvBpOSnWl6qVvY,529 pyOpenRPA/Orchestrator/Core.py,sha256=OHa3mSC3_wRAizqrWBVjlR6ln4-xVVvBpOSnWl6qVvY,529
pyOpenRPA/Orchestrator/Managers/ControlPanel.py,sha256=BgtLjb6PR6kTlOjPLCg2YGP458LS9JOaYEfNurhS0nk,16544 pyOpenRPA/Orchestrator/Managers/ControlPanel.py,sha256=XpmN_LB--phNq4VpsbdWHJC6ybIt7jWBsl6HKfxHP1I,16550
pyOpenRPA/Orchestrator/Managers/Git.py,sha256=dgXx2UzSwiEev4ov2hBbb-5MhXVhFKWZo2lmr19QSCQ,12582 pyOpenRPA/Orchestrator/Managers/Git.py,sha256=dgXx2UzSwiEev4ov2hBbb-5MhXVhFKWZo2lmr19QSCQ,12582
pyOpenRPA/Orchestrator/Managers/Process.py,sha256=7T_qofdkRJHdPQbaiEsTDOboImSf2N6d_Ku513rURkw,41369 pyOpenRPA/Orchestrator/Managers/Process.py,sha256=DYX1pBK4gaxcfmDj-1OaLNyk83D_R_7ztZyt0SHWoik,41377
pyOpenRPA/Orchestrator/Managers/__init__.py,sha256=4my0XiwmI_QLRQVhOzNvWTggCosF3tb2yRxGkehOCq0,71 pyOpenRPA/Orchestrator/Managers/__init__.py,sha256=4my0XiwmI_QLRQVhOzNvWTggCosF3tb2yRxGkehOCq0,71
pyOpenRPA/Orchestrator/Managers/__pycache__/ControlPanel.cpython-37.pyc,, pyOpenRPA/Orchestrator/Managers/__pycache__/ControlPanel.cpython-37.pyc,,
pyOpenRPA/Orchestrator/Managers/__pycache__/Git.cpython-37.pyc,, pyOpenRPA/Orchestrator/Managers/__pycache__/Git.cpython-37.pyc,,
@ -81,7 +81,7 @@ pyOpenRPA/Orchestrator/Web/Index.js,sha256=YACiZAvjr6NmFlDhQu6urkJp49BX7L8WJU9p-
pyOpenRPA/Orchestrator/Web/Index.xhtml,sha256=5JUAs5rEiU0XtHM9QO6EdNMBGt-W6QOVGY7xJ_HLPFM,19257 pyOpenRPA/Orchestrator/Web/Index.xhtml,sha256=5JUAs5rEiU0XtHM9QO6EdNMBGt-W6QOVGY7xJ_HLPFM,19257
pyOpenRPA/Orchestrator/Web/__pycache__/Basic.cpython-37.pyc,, pyOpenRPA/Orchestrator/Web/__pycache__/Basic.cpython-37.pyc,,
pyOpenRPA/Orchestrator/Web/favicon.ico,sha256=6S8XwSQ_3FXPpaX6zYkf8uUewVXO9bHnrrDHEoWrEgw,112922 pyOpenRPA/Orchestrator/Web/favicon.ico,sha256=6S8XwSQ_3FXPpaX6zYkf8uUewVXO9bHnrrDHEoWrEgw,112922
pyOpenRPA/Orchestrator/__Orchestrator__.py,sha256=Zud6HTAHSsfTJVrszML5EjGTqlA7k5qhthZTsSD1pX8,151055 pyOpenRPA/Orchestrator/__Orchestrator__.py,sha256=rlM-j8LK4BdcPfI8KNMOi1Rq-Ht8kCLs6WYsPBZgDTU,203081
pyOpenRPA/Orchestrator/__init__.py,sha256=nJhjYtBXKOUNX_yNu1rRFk5y9cDz6AFiL0M6KgX_utQ,207 pyOpenRPA/Orchestrator/__init__.py,sha256=nJhjYtBXKOUNX_yNu1rRFk5y9cDz6AFiL0M6KgX_utQ,207
pyOpenRPA/Orchestrator/__main__.py,sha256=czJrc7_57WiO3EPIYfPeF_LG3pZsQVmuAYgbl_YXcVU,273 pyOpenRPA/Orchestrator/__main__.py,sha256=czJrc7_57WiO3EPIYfPeF_LG3pZsQVmuAYgbl_YXcVU,273
pyOpenRPA/Orchestrator/__pycache__/BackwardCompatibility.cpython-37.pyc,, pyOpenRPA/Orchestrator/__pycache__/BackwardCompatibility.cpython-37.pyc,,
@ -270,15 +270,15 @@ pyOpenRPA/Resources/Web/Semantic-UI-CSS-master/themes/default/assets/fonts/outli
pyOpenRPA/Resources/Web/Semantic-UI-CSS-master/themes/default/assets/images/flags.png,sha256=lNXH8WYTAcSm3Ekdct1VmgYgzZF6gm8N8bAju5bqnd0,28123 pyOpenRPA/Resources/Web/Semantic-UI-CSS-master/themes/default/assets/images/flags.png,sha256=lNXH8WYTAcSm3Ekdct1VmgYgzZF6gm8N8bAju5bqnd0,28123
pyOpenRPA/Resources/Web/jQuery/jquery-3.1.1.min.js,sha256=HPMOWdIdSuVgr3FD9ZE-_MgiK8qk_MdQjrgCtfqp6U4,86713 pyOpenRPA/Resources/Web/jQuery/jquery-3.1.1.min.js,sha256=HPMOWdIdSuVgr3FD9ZE-_MgiK8qk_MdQjrgCtfqp6U4,86713
pyOpenRPA/Resources/Web/pyOpenRPA_logo.png,sha256=7rulXo_C57xJQEaYWmAkChxXb6xbDW2zq-werzVbDbc,4899 pyOpenRPA/Resources/Web/pyOpenRPA_logo.png,sha256=7rulXo_C57xJQEaYWmAkChxXb6xbDW2zq-werzVbDbc,4899
pyOpenRPA/Robot/Clipboard.py,sha256=q76X8L21zJwcwdoJJNPeCEwAV30xS6ylHP1WwvtxoWI,722 pyOpenRPA/Robot/Clipboard.py,sha256=ntvXqnJpgmTPnehrjfVibrM72-AYLrqOn-CI2xVOaDs,1577
pyOpenRPA/Robot/Keyboard.py,sha256=k_5uNh7UWq5F4TKGbe4LpJwqWgUrftNieWm51HOgOBI,22 pyOpenRPA/Robot/Keyboard.py,sha256=6Ah71EaETse2_nPiz8EPW_fZBlhpaZg5WZ6tWZ2wC9U,17898
pyOpenRPA/Robot/Mouse.py,sha256=tBW9yteyEv9znJePOfbZcU3YqxX42wyu4Wc09fVaO0c,23 pyOpenRPA/Robot/Mouse.py,sha256=Wvai_tpanqREj5jA4tFEl_-0L45cpk41cX5_Ex68mBg,16079
pyOpenRPA/Robot/OrchestratorConnector.py,sha256=JUtdiUXCruqUqBD19gJBl9jk_b-tpWWx_v3MfBoKzoQ,20445 pyOpenRPA/Robot/OrchestratorConnector.py,sha256=JUtdiUXCruqUqBD19gJBl9jk_b-tpWWx_v3MfBoKzoQ,20445
pyOpenRPA/Robot/README.md,sha256=e2hKh7Tx6DAsX6jY_hBDhguL1L2Wiv6iugDB5otMzIA,2293 pyOpenRPA/Robot/README.md,sha256=bwiTAygxuMZzBlwpsndw2QgxA2smIjUyOPZnsnR341k,1623
pyOpenRPA/Robot/Screen.py,sha256=tBW9yteyEv9znJePOfbZcU3YqxX42wyu4Wc09fVaO0c,23 pyOpenRPA/Robot/Screen.py,sha256=tBW9yteyEv9znJePOfbZcU3YqxX42wyu4Wc09fVaO0c,23
pyOpenRPA/Robot/SettingsTemplate.py,sha256=Rp5XPeV2I4tCS2uf4Zkqm_ERJ6pZMg4-e5_lMqGJYLk,1453 pyOpenRPA/Robot/SettingsTemplate.py,sha256=Rp5XPeV2I4tCS2uf4Zkqm_ERJ6pZMg4-e5_lMqGJYLk,1453
pyOpenRPA/Robot/Test.py,sha256=qXr990nXiFZX5SNv6QN9GLb_U4HZRmJnbZR2qSnwilY,2878 pyOpenRPA/Robot/Test.py,sha256=qXr990nXiFZX5SNv6QN9GLb_U4HZRmJnbZR2qSnwilY,2878
pyOpenRPA/Robot/UIDesktop.py,sha256=EllVup0umNNFqcQrrO6pffdoTBzc5Y-jEKrY0oO7joU,82938 pyOpenRPA/Robot/UIDesktop.py,sha256=y0lHHtn-Cd7I1rUQGgBYfZQpfcrGBAfMST9F5aPIxtM,124815
pyOpenRPA/Robot/UIWeb.py,sha256=NFH0brDKEmWWOJxMzO7404K5lJ4LaDn5XMnkoH13Y64,22 pyOpenRPA/Robot/UIWeb.py,sha256=NFH0brDKEmWWOJxMzO7404K5lJ4LaDn5XMnkoH13Y64,22
pyOpenRPA/Robot/Utils/JSONNormalize.py,sha256=aIuVzuZDazhxkCOzoOjfhHVz66mp2FWdfPv5E7KWF5Y,3890 pyOpenRPA/Robot/Utils/JSONNormalize.py,sha256=aIuVzuZDazhxkCOzoOjfhHVz66mp2FWdfPv5E7KWF5Y,3890
pyOpenRPA/Robot/Utils/ProcessBitness.py,sha256=WlKL-DklGaoTnchtapOTM_ydxSB4yOeo9lcG3zr2VME,4524 pyOpenRPA/Robot/Utils/ProcessBitness.py,sha256=WlKL-DklGaoTnchtapOTM_ydxSB4yOeo9lcG3zr2VME,4524
@ -364,6 +364,6 @@ pyOpenRPA/Tools/__pycache__/License.cpython-37.pyc,,
pyOpenRPA/Tools/__pycache__/StopSafe.cpython-37.pyc,, pyOpenRPA/Tools/__pycache__/StopSafe.cpython-37.pyc,,
pyOpenRPA/Tools/__pycache__/Usage.cpython-37.pyc,, pyOpenRPA/Tools/__pycache__/Usage.cpython-37.pyc,,
pyOpenRPA/Tools/__pycache__/__init__.cpython-37.pyc,, pyOpenRPA/Tools/__pycache__/__init__.cpython-37.pyc,,
pyOpenRPA/__init__.py,sha256=fmC6rG7L4TIer8c0qUyp-Ypv2d7C2TBucEjIg7Wwip4,175 pyOpenRPA/__init__.py,sha256=Q9zi3T0F5hLslWv3SoO1EvZt17wEU5fq3JJ59uqdtg8,156
pyOpenRPA/__pycache__/__init__.cpython-37.pyc,, pyOpenRPA/__pycache__/__init__.cpython-37.pyc,,
pyOpenRPA/test.txt,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 pyOpenRPA/test.txt,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0

@ -39,6 +39,7 @@ class ControlPanel():
Jinja2DataUpdateDictSet Jinja2DataUpdateDictSet
.. code-block:: html .. code-block:: html
Hello my control panel! Hello my control panel!
You can use any def from Orchestrator module here in Jinja2 HTML template: You can use any def from Orchestrator module here in Jinja2 HTML template:
Example: OrchestratorModule.OSCMD(inCMDStr="notepad") Example: OrchestratorModule.OSCMD(inCMDStr="notepad")

@ -22,6 +22,7 @@ class Process():
- 5_STARTED_MANUAL - 5_STARTED_MANUAL
.. code-block:: python .. code-block:: python
# For the safe init class use ProcessInitSafe # For the safe init class use ProcessInitSafe
lProcess = Orchestrator.Managers.ProcessInitSafe(inAgentHostNameStr="PCNAME",inAgentUserNameStr="USER", lProcess = Orchestrator.Managers.ProcessInitSafe(inAgentHostNameStr="PCNAME",inAgentUserNameStr="USER",
inProcessNameWOExeStr="notepad",inStartCMDStr="notepad",inStopSafeTimeoutSecFloat=3) inProcessNameWOExeStr="notepad",inStartCMDStr="notepad",inStopSafeTimeoutSecFloat=3)
@ -35,6 +36,7 @@ class Process():
How to use StopSafe on the robot side How to use StopSafe on the robot side
.. code-block:: python .. code-block:: python
from pyOpenRPA.Tools import StopSafe from pyOpenRPA.Tools import StopSafe
StopSafe.Init(inLogger=None) StopSafe.Init(inLogger=None)
StopSafe.IsSafeStop() # True - WM_CLOSE SIGNAL has come. taskkill /im someprocess.exe StopSafe.IsSafeStop() # True - WM_CLOSE SIGNAL has come. taskkill /im someprocess.exe

@ -4,17 +4,42 @@ import win32clipboard
#################################### ####################################
# GUI Module - interaction with Windows clipboard # GUI Module - interaction with Windows clipboard
################ def Get():
###ClipboardGet """
################ Получить текстовое содержимое буфера обмена.
.. code-block:: python
# Clipboard: Взаимодействие с буфером
from pyOpenRPA.Robot import Clipboard
lClipStr = Clipboard.Get()
:return: Текстовое содержимое буфера обмена
:rtype: str
"""
return ClipboardGet()
def Set(inTextStr:str):
"""
Установить текстовое содержимое в буфер обмена.
.. code-block:: python
# Clipboard: Взаимодействие с буфером
from pyOpenRPA.Robot import Clipboard
lClipStr = Clipboard.Set(inTextStr="HELLO WORLD")
:param inTextStr: Текстовое содержимое для установки в буфера обмена
:type inTextStr: str
"""
ClipboardSet(inText=inTextStr)
def ClipboardGet(): def ClipboardGet():
win32clipboard.OpenClipboard() win32clipboard.OpenClipboard()
lResult = win32clipboard.GetClipboardData(win32clipboard.CF_UNICODETEXT) lResult = win32clipboard.GetClipboardData(win32clipboard.CF_UNICODETEXT)
win32clipboard.CloseClipboard() win32clipboard.CloseClipboard()
return lResult return lResult
################
###ClipboardSet
################
def ClipboardSet(inText): def ClipboardSet(inText):
win32clipboard.OpenClipboard() win32clipboard.OpenClipboard()
win32clipboard.EmptyClipboard() win32clipboard.EmptyClipboard()

@ -1 +1,344 @@
from keyboard import * from keyboard import *
import time
# Настройки модуля Keyboard
WAIT_AFTER_SEC_FLOAT = 0.4 # Время, которое ожидать после выполнения любой операции модуля Keyboard. Настройка является единой для всех участов кода, использующих модуль Keyboard. Если для некоторой функции требуется изменить данное время ожидания, то в отношении этой функции можно применить соответсвующий аргумент.
# ШЕСТНАДЦАТИРИЧНЫЙ СКАН-КОД В РУССКОЙ РАСКЛАДКЕ (НЕЗАВИСИМО ОТ ВЫБРАННОГО ЯЗЫКА НА КЛАВИАТУРЕ)
# ОТОБРАЖЕНИЕ СКАН КОДОВ НА КЛАВИАТУРЕ https://snipp.ru/handbk/scan-codes
KEY_RUS_Ф = 0x1E #A
KEY_RUS_И = 0x30 #B
KEY_RUS_С = 0x2E #C
KEY_RUS_В = 0x20 #D
KEY_RUS_У = 0x12 #E
KEY_RUS_А = 0x21 #F
KEY_RUS_П = 0x22 #G
KEY_RUS_Р = 0x23 #H
KEY_RUS_Ш = 0x17 #I
KEY_RUS_О = 0x24 #J
KEY_RUS_Л = 0x25 #K
KEY_RUS_Д = 0x26 #L
KEY_RUS_Ь = 0x32 #M
KEY_RUS_Т = 0x31 #N
KEY_RUS_Щ = 0x18 #O
KEY_RUS_З = 0x19 #P
KEY_RUS_Й = 0x10 #Q
KEY_RUS_К = 0x13 #R
KEY_RUS_Ы = 0x1F #S
KEY_RUS_Е = 0x14 #T
KEY_RUS_Г = 0x16 #U
KEY_RUS_М = 0x2F #V
KEY_RUS_Ц = 0x11 #W
KEY_RUS_Ч = 0x2D #X
KEY_RUS_Н = 0x15 #Y
KEY_RUS_Я = 0x2C #Z
KEY_RUS_Ё = 0x29 #~
KEY_RUS_Ж = 0x27 #:
KEY_RUS_Б = 0x33 #<
KEY_RUS_Ю = 0x34 #>
KEY_RUS_Х = 0x1A #[
KEY_RUS_Ъ = 0x1B #]
KEY_RUS_Э = 0x28 #'
KEY_ENG_A = 0x1E #A
KEY_ENG_B = 0x30 #B
KEY_ENG_C = 0x2E #C
KEY_ENG_D = 0x20 #D
KEY_ENG_E = 0x12 #E
KEY_ENG_F = 0x21 #F
KEY_ENG_G = 0x22 #G
KEY_ENG_H = 0x23 #H
KEY_ENG_I = 0x17 #I
KEY_ENG_J = 0x24 #J
KEY_ENG_K = 0x25 #K
KEY_ENG_L = 0x26 #L
KEY_ENG_M = 0x32 #M
KEY_ENG_N = 0x31 #N
KEY_ENG_O = 0x18 #O
KEY_ENG_P = 0x19 #P
KEY_ENG_Q = 0x10 #Q
KEY_ENG_R = 0x13 #R
KEY_ENG_S = 0x1F #S
KEY_ENG_T = 0x14 #T
KEY_ENG_U = 0x16 #U
KEY_ENG_V = 0x2F #V
KEY_ENG_W = 0x11 #W
KEY_ENG_X = 0x2D #X
KEY_ENG_Y = 0x15 #Y
KEY_ENG_Z = 0x2C #Z
KEY_HOT_NUMPAD_0 = 0x52
KEY_HOT_NUMPAD_1 = 0x4F
KEY_HOT_NUMPAD_2 = 0x50
KEY_HOT_NUMPAD_3 = 0x51
KEY_HOT_NUMPAD_4 = 0x4B
KEY_HOT_NUMPAD_5 = 0x4C
KEY_HOT_NUMPAD_6 = 0x4D
KEY_HOT_NUMPAD_7 = 0x47
KEY_HOT_NUMPAD_8 = 0x48
KEY_HOT_NUMPAD_9 = 0x49
KEY_HOT_NUMPAD_ASTERISK = 0x37 #*
KEY_HOT_NUMPAD_PLUS = 0x4E
KEY_HOT_NUMPAD_MINUS = 0x4A
KEY_HOT_NUMPAD_DELETE = 0x53
KEY_HOT_NUMPAD_SOLIDUS = 0x35 #/
KEY_HOT_NUMPAD_ENTER = 0x11c
KEY_HOT_F1 = 0x3B
KEY_HOT_F2 = 0x3C
KEY_HOT_F3 = 0x3D
KEY_HOT_F4 = 0x3E
KEY_HOT_F5 = 0x3F
KEY_HOT_F6 = 0x40
KEY_HOT_F7 = 0x41
KEY_HOT_F8 = 0x42
KEY_HOT_F9 = 0x43
KEY_HOT_F10 = 0x44
KEY_HOT_F11 = 0x57
KEY_HOT_F12 = 0x58
KEY_HOT_F13 = 0x7C
KEY_HOT_F14 = 0x7D
KEY_HOT_F15 = 0x7E
KEY_HOT_F16 = 0x7F
KEY_HOT_F17 = 0x80
KEY_HOT_F18 = 0x81
KEY_HOT_F19 = 0x82
KEY_HOT_F20 = 0x83
KEY_HOT_F21 = 0x84
KEY_HOT_F22 = 0x85
KEY_HOT_F23 = 0x86
KEY_HOT_F24 = 0x87
KEY_HOT_TILDE = 0x29 #~
KEY_HOT_COLON = 0x27 #:
KEY_HOT_PLUS = 0x0D #+
KEY_HOT_MINUS = 0x0C #-
KEY_HOT_LESS_THAN = 0x33 #< ,
KEY_HOT_GREATER_THAN = 0x34 #> .
KEY_HOT_SOLIDUS = 0x35 #/ ?
KEY_HOT_SQUARE_BRACKET_LEFT = 0x1A #[
KEY_HOT_SQUARE_BRACKET_RIGHT = 0x1B #]
KEY_HOT_APOSTROPHE = 0x28 #' "
KEY_HOT_VERTICAL_LINE = 0x2B #| \
KEY_HOT_ESC = 0x1
KEY_HOT_BACKSPACE = 0x0E
KEY_HOT_TAB = 0x0F
KEY_HOT_ENTER = 0x1C
KEY_HOT_CONTEXT_MENU = 0x15D
KEY_HOT_SHIFT_LEFT = 0x2A
KEY_HOT_SHIFT_RIGHT = 0x36
KEY_HOT_CTRL_LEFT = 0x1D
KEY_HOT_CTRL_RIGHT = 0x11D
KEY_HOT_ALT_LEFT = 0x38
KEY_HOT_ALT_RIGHT = 0x138
KEY_HOT_WIN_LEFT = 57435 #OLD AND DONT WORK 0x5B
KEY_HOT_WIN_RIGHT = 57436 #OLD AND DONT WORK 0x5C
KEY_HOT_CAPS_LOCK = 0x3A
KEY_HOT_NUM_LOCK = 0x45
KEY_HOT_SCROLL_LOCK = 0x46
KEY_HOT_END = 0x4F
KEY_HOT_HOME = 0x47
KEY_HOT_SPACE = 0x39
KEY_HOT_PAGE_UP = 0x49
KEY_HOT_PAGE_DOWN = 0x51
KEY_HOT_CLEAR = 0x4C
KEY_HOT_LEFT = 0x4B
KEY_HOT_UP = 0x48
KEY_HOT_RIGHT = 0x4D
KEY_HOT_DOWN = 0x50
KEY_HOT_PRINT_SCREEN = 0x137
KEY_HOT_INSERT = 0x52
KEY_HOT_DELETE = 0x53
KEY_HOT_0 = 0xB
KEY_HOT_1 = 0x2
KEY_HOT_2 = 0x3
KEY_HOT_3 = 0x4
KEY_HOT_4 = 0x5
KEY_HOT_5 = 0x6
KEY_HOT_6 = 0x7
KEY_HOT_7 = 0x8
KEY_HOT_8 = 0x9
KEY_HOT_9 = 0xA
def Write(inTextStr:str, inDelayFloat:float=0, inRestoreStateAfterBool:bool=True, inExactBool:bool=None, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""
Печатает текст, который был передан в переменной inTextStr (поддерживает передачу в одной строке символов разного языка). Не зависит от текущей раскладки клавиатуры! Посылает искусственные клавишные события в ОС, моделируя печать данного текста. Знаки, не доступные на клавиатуре, напечатаны как явный unicode знаки, использующие определенную для ОС функциональность, такие как alt+codepoint.
Чтобы гарантировать текстовую целостность, все в настоящее время нажатые ключи выпущены прежде текст напечатан, и модификаторы восстановлены впоследствии.
ВНИМАНИЕ! ПЕЧАТАЕТ ЛЮБУЮ СТРОКУ, ДАЖЕ В СОЧЕТАНИИ НЕСКОЛЬКИХ ЯЗЫКОВ ОДНОВРЕМЕННО. ДЛЯ РАБОТЫ С ГОРЯЧИМИ КЛАВИШАМИ ИСПОЛЬЗУЙ ФУНКЦИЮ Send, Up, Down, HotkeyCombination
.. code-block:: python
# Keyboard: Взаимодействие с клавиатурой
from pyOpenRPA.Robot import Keyboard
Keyboard.Write("Привет мой милый мир! Hello my dear world!")
:param inTextStr: Текст, отправляемый на печать. Не зависит от текущей раскладки клавиатуры!
:type inTextStr: str
:param inDelayFloat: Число секунд, которое ожидать между нажатиями. По умолчанию 0
:type inDelayFloat: float, опциональный
:param inRestoreStateAfterBool: Может использоваться, чтобы восстановить регистр нажатых ключей после того, как текст напечатан, т.е. нажимает ключи, которые были выпущены в начало.
:type inRestoreStateAfterBool: bool, опциональный
:param inExactBool: Печатает все знаки как явный unicode. Необязательный параметр
:type inExactBool: bool, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
write(text=inTextStr, delay=inDelayFloat, restore_state_after=inRestoreStateAfterBool, exact=inExactBool)
time.sleep(inWaitAfterSecFloat)
def HotkeyCombination(*inKeyList, inDelaySecFloat = 0.3,inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Получает перечень клавиш для одновременного нажатия. Между нажатиями программа ожидания время inDelaySecFloat
ВНИМАНИЕ! НЕ ЗАВИСИТ ОТ ТЕКУЩЕЙ РАСКЛАДКИ КЛАВИАТУРЫ
.. code-block:: python
# Keyboard: Взаимодействие с клавиатурой
from pyOpenRPA.Robot import Keyboard
Keyboard.HotkeyCombination(Keyboard.KEY_HOT_CTRL_LEFT,Keyboard.KEY_ENG_A) # Ctrl + a
Keyboard.HotkeyCombination(Keyboard.KEY_HOT_CTRL_LEFT,Keyboard.KEY_ENG_C) # Ctrl + c
Keyboard.HotkeyCombination(Keyboard.KEY_HOT_CTRL_LEFT,Keyboard.KEY_ENG_A)
Keyboard.HotkeyCombination(Keyboard.KEY_HOT_ALT_LEFT,Keyboard.KEY_HOT_TAB, Keyboard.KEY_HOT_TAB)
:param inKeyList: Список клавиш для одновременного нажатия. Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT,KEY_ENG_A
:param inDelaySecFloat: Интервал между нажатиями. Необходим в связи с тем, что операционной системе требуется время на реакцию на нажатие клавиш, по умолчанию: 0.3
:type inDelaySecFloat: float, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
for l_key_item in inKeyList:
if l_key_item == inKeyList[-1]:
send(l_key_item)
else:
press(l_key_item)
time.sleep(inDelaySecFloat)
lRevKeyList = list(reversed(inKeyList))
for l_key_item in lRevKeyList:
if l_key_item == lRevKeyList[0]:
pass
else:
release(l_key_item)
time.sleep(inDelaySecFloat)
time.sleep(inWaitAfterSecFloat)
def HotkeyCtrlA_CtrlC(inWaitAfterSecFloat:float=0.4) -> None:
"""Выполнить выделение текста, после чего скопировать его в буфер обмена
ВНИМАНИЕ! НЕ ЗАВИСИТ ОТ ТЕКУЩЕЙ РАСКЛАДКИ КЛАВИАТУРЫ
.. code-block:: python
# Keyboard: Взаимодействие с клавиатурой
from pyOpenRPA.Robot import Keyboard
Keyboard.HotkeyCtrlA_CtrlC() # Отправить команды: выделить все, скопировать в буфер обмена
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
HotkeyCombination(KEY_HOT_CTRL_LEFT,KEY_ENG_A) # Ctrl + a
HotkeyCombination(KEY_HOT_CTRL_LEFT,KEY_ENG_C) # Ctrl + c
time.sleep(inWaitAfterSecFloat)
def Send(inKeyInt:int, inDoPressBool:bool=True, inDoReleaseBool:bool=True,inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT) -> None:
"""
Имитация нажатия/отпускания любой физической клавиши. Посылает событие в операционную систему, которые выполняет нажатие и отпускание данной клавиши
ВНИМАНИЕ! ПРИ ПОПЫТКЕ ПЕЧАТИ ТЕКСТА БУДЕТ УЧИТЫВАТЬ ТЕКУЩУЮ РАСКЛАДКУ КЛАВИАТУРЫ. ДЛЯ ПЕЧАТИ ТЕКСТА ИСПОЛЬЗУЙ Write!
.. code-block:: python
# Keyboard: Взаимодействие с клавиатурой
from pyOpenRPA.Robot import Keyboard
Keyboard.Send(Keyboard.KEY_ENG_A) # Нажать клавишу A. Если будет активна русская раскладка, то будет выведена буква ф.
:param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT,KEY_ENG_A
:type inKeyInt: int
:param inDoPressBool: Выполнить событие нажатия клавиши, По умолчанию True
:type inDoPressBool: bool, опциональный
:param inDoReleaseBool: Выполнить событие отпускания клавиши, По умолчанию True
:type inDoReleaseBool: bool, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
send(hotkey=inKeyInt, do_press=inDoPressBool, do_release=inDoReleaseBool)
time.sleep(inWaitAfterSecFloat)
def Up(inKeyInt:int, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT) -> None:
"""
Отпустить (поднять) клавишу. Если клавиша уже была поднята, то ничего не произойдет.
ВНИМАНИЕ! ПРИ ПОПЫТКЕ ПЕЧАТИ ТЕКСТА БУДЕТ УЧИТЫВАТЬ ТЕКУЩУЮ РАСКЛАДКУ КЛАВИАТУРЫ. ДЛЯ ПЕЧАТИ ТЕКСТА ИСПОЛЬЗУЙ Write!
.. code-block:: python
# Keyboard: Взаимодействие с клавиатурой
from pyOpenRPA.Robot import Keyboard
Keyboard.Up(Keyboard.KEY_ENG_A) # Отпустить клавишу A.
:param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT, KEY_ENG_A
:type inKeyInt: int
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
send(hotkey=inKeyInt, do_press=False, do_release=True)
time.sleep(inWaitAfterSecFloat)
def Down(inKeyInt:int, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT) -> None:
"""
Нажать (опустить) клавишу. Если клавиша уже была опущена, то ничего не произойдет.
ВНИМАНИЕ! ПРИ ПОПЫТКЕ ПЕЧАТИ ТЕКСТА БУДЕТ УЧИТЫВАТЬ ТЕКУЩУЮ РАСКЛАДКУ КЛАВИАТУРЫ. ДЛЯ ПЕЧАТИ ТЕКСТА ИСПОЛЬЗУЙ Write!
.. code-block:: python
# Keyboard: Взаимодействие с клавиатурой
from pyOpenRPA.Robot import Keyboard
Keyboard.Down(Keyboard.KEY_ENG_A) # Отпустить клавишу A.
:param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT, KEY_ENG_A
:type inKeyInt: int
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
send(hotkey=inKeyInt, do_press=True, do_release=False)
time.sleep(inWaitAfterSecFloat)
def IsDown(inKeyInt:int) -> bool:
"""
Проверить, опущена ли клавиша. Вернет True если опущена; False если поднята.
ВНИМАНИЕ! ПРИ ПОПЫТКЕ ПЕЧАТИ ТЕКСТА БУДЕТ УЧИТЫВАТЬ ТЕКУЩУЮ РАСКЛАДКУ КЛАВИАТУРЫ. ДЛЯ ПЕЧАТИ ТЕКСТА ИСПОЛЬЗУЙ Write!
.. code-block:: python
# Keyboard: Взаимодействие с клавиатурой
from pyOpenRPA.Robot import Keyboard
lKeyAIsPressedBool = Keyboard.IsDown(Keyboard.KEY_ENG_A) # Проверить, опущена ли клавиша A.
:param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT, KEY_ENG_A
:type inKeyInt: int
"""
return is_pressed(inKeyInt)
def Wait(inKeyInt:int,inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Блокирует осуществление программы, пока данная обозначенная клавиша не будет нажата.
ВНИМАНИЕ! НЕ ЗАВИСИТ ОТ ТЕКУЩЕЙ РАСКЛАДКИ КЛАВИАТУРЫ. ОЖИДАЕТ НАЖАТИЕ СООТВЕТСВУЮЩЕЙ ФИЗИЧЕСКОЙ КЛАВИШИ
.. code-block:: python
# Keyboard: Взаимодействие с клавиатурой
from pyOpenRPA.Robot import Keyboard
Keyboard.Wait(Keyboard.KEY_ENG_A) # Ждать нажатие клавиши A.
:param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT,KEY_ENG_A
:type inKeyInt: int
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
wait(hotkey=inKeyInt)
time.sleep(inWaitAfterSecFloat)
key_to_scan_codes("win") # 2022 06 10 Люблю смотреть скан код клавиши Виндовс :)

@ -1 +1,173 @@
from pyautogui import * from pyautogui import *
import time
WAIT_AFTER_SEC_FLOAT = 0.4 # Настройка модуля Mouse: Время, которое ожидать после выполнения любой операции модуля Mouse. Настройка является единой для всех участов кода, использующих модуль Mouse. Если для некоторой функции требуется изменить данное время ожидания, то в отношении этой функции можно применить соответсвующий аргумент.
def Click(inXInt:int=None, inYInt:int=None, inClickCountInt:int=1, inIntervalSecFloat:float=0.0, inButtonStr:str='left', inMoveDurationSecFloat:float=0.0, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Нажатие (вниз) кнопки мыши и затем немедленно выпуск (вверх) её. Допускается следующая параметризация. Если не указаны inXInt и inYInt - клик производится по месту нахождения указателя мыши.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
.. code-block:: python
# Mouse: Взаимодействие с мышью
from pyOpenRPA.Robot import Mouse
Mouse.Click(100,150) #Выполнить нажатие левой клавиши мыши на экране по координатам: X(гор) 100px, Y(вер) 150px.
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опциональный
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опциональный
:param inClickCountInt: Количество нажатий (вниз и вверх) кнопкой мыши, По умолчанию 1
:type inClickCountInt: int, опциональный
:param inIntervalSecFloat: Интервал ожидания в секундах между нажатиями, По умолчанию 0.0
:type inIntervalSecFloat: float, опциональный
:param inButtonStr: Номер кнопки, которую требуется нажать. Возможные варианты: 'left', 'middle', 'right' или 1, 2, 3. В остальных случаях инициирует исключение ValueError. По умолчанию 'left'
:type inButtonStr: str, опциональный
:param inMoveDurationSecFloat: Время перемещения указателя мыши, По умолчанию 0.0 (моментальное перемещение)
:type inMoveDurationSecFloat: float, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
click(x=inXInt, y=inYInt, clicks=inClickCountInt, interval=inIntervalSecFloat, button=inButtonStr, duration=inMoveDurationSecFloat)
time.sleep(inWaitAfterSecFloat)
def ClickDouble(inXInt:int=None, inYInt:int=None, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Двойное нажатие левой клавиши мыши. Данное действие аналогично вызову функции (см. ниже).
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
.. code-block:: python
# Mouse: Взаимодействие с мышью
from pyOpenRPA.Robot import Mouse
Mouse.ClickDouble(100,150) #Выполнить двойное нажатие левой клавиши мыши на экране по координатам: X(гор) 100px, Y(вер) 150px.
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опциональный
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опциональный
:param inButtonStr: Номер кнопки, которую требуется нажать. Возможные варианты: 'left', 'middle', 'right' или 1, 2, 3. В остальных случаях инициирует исключение ValueError. По умолчанию 'left'
:type inButtonStr: str, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
doubleClick(x=inXInt, y=inYInt)
time.sleep(inWaitAfterSecFloat)
def Down(inXInt:int=None, inYInt:int=None, inButtonStr:str='left', inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Переместить указатель по координатам inXInt, inYInt, после чего нажать (вниз) клавишу мыши и не отпускать до выполнения соответсвующей команды (см. Up). Если координаты inXInt, inYInt не переданы - нажатие происходит на тех координатах X/Y, на которых указатель мыши находится.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
.. code-block:: python
# Mouse: Взаимодействие с мышью
from pyOpenRPA.Robot import Mouse
Mouse.Down() #Опустить левую клавишу мыши
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опциональный
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опциональный
:param inButtonStr: Номер кнопки, которую требуется нажать. Возможные варианты: 'left', 'middle', 'right' или 1, 2, 3. В остальных случаях инициирует исключение ValueError. По умолчанию 'left'
:type inButtonStr: str, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
mouseDown(x=inXInt, y=inYInt, button = inButtonStr)
time.sleep(inWaitAfterSecFloat)
def Up(inXInt:int=None, inYInt:int=None, inButtonStr:str='left', inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Отпустить (вверх) клавишу мыши. Если координаты inXInt, inYInt не переданы - нажатие происходит на тех координатах X/Y, на которых указатель мыши находится.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области.
.. code-block:: python
# Mouse: Взаимодействие с мышью
from pyOpenRPA.Robot import Mouse
Mouse.Up(inButtonStr:str='right') #Поднять правую клавишу мыши
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опциональный
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опциональный
:param inButtonStr: Номер кнопки, которую требуется поднять. Возможные варианты: 'left', 'middle', 'right' или 1, 2, 3. В остальных случаях инициирует исключение ValueError. По умолчанию 'left'
:type inButtonStr: str, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
mouseUp(x=inXInt, y=inYInt, button = inButtonStr)
time.sleep(inWaitAfterSecFloat)
def MoveTo(inXInt=None, inYInt=None, inMoveDurationSecFloat:float=0.0, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Переместить указатель мыши на позицию inXInt, inYInt за время inMoveDurationSecFloat.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
.. code-block:: python
# Mouse: Взаимодействие с мышью
from pyOpenRPA.Robot import Mouse
Mouse.MoveTo(inXInt=100, inYInt=200) #Переместить указатель мыши по координатам: X(гор) 100, Y(вер) 200
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опциональный
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опциональный
:param inMoveDurationSecFloat: Время перемещения указателя мыши, По умолчанию 0.0 (моментальное перемещение)
:type inMoveDurationSecFloat: float, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
moveTo(x=inXInt, y=inYInt, duration=inMoveDurationSecFloat)
time.sleep(inWaitAfterSecFloat)
def ScrollVertical(inScrollClickCountInt, inXInt=None, inYInt=None, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Переместить указатель мыши на позицию inXInt, inYInt и выполнить вертикальную прокрутку (скроллинг) колесом мыши на количество щелчков inScrollClickCountInt.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
.. code-block:: python
# Mouse: Взаимодействие с мышью
from pyOpenRPA.Robot import Mouse
Mouse.ScrollVertical(100, inXInt=100, inYInt=200) #Крутить колесо мыши вниз на 100 кликов по координатам: X(гор) 100, Y(вер) 200
Mouse.ScrollVertical(-100) #Крутить колесо мыши вверх на 100 кликов по текущим координатам указателя мыши.
:param inScrollClickCountInt: Количество щелчок колеса мыши, которое требуется !вертикально! прокрутить. Аргумент может принимать как положительное (прокрутка вниз), так и отрицательное (прокрутка вверх) значения
:type inScrollClickCountInt: int, обязательный
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опциональный
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
vscroll(inScrollClickCountInt, x=inXInt, y=inYInt)
time.sleep(inWaitAfterSecFloat)
def ScrollHorizontal(inScrollClickCountInt, inXInt=None, inYInt=None, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""!ТОЛЬКО ДЛЯ LINUX! Переместить указатель мыши на позицию inXInt, inYInt и выполнить горизонтальную прокрутку (скроллинг) виртуальным колесом мыши на количество щелчков inScrollClickCountInt.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
.. code-block:: python
# Mouse: Взаимодействие с мышью
from pyOpenRPA.Robot import Mouse
Mouse.ScrollHorizontal(100, inXInt=100, inYInt=200) #Крутить колесо мыши вниз на 100 кликов по координатам: X(гор) 100, Y(вер) 200
Mouse.ScrollHorizontal(-100) #Крутить колесо мыши вверх на 100 кликов по текущим координатам указателя мыши.
:param inScrollClickCountInt: Количество щелчок колеса мыши, которое требуется !горизонтально! прокрутить. Аргумент может принимать как положительное (прокрутка вправо), так и отрицательное (прокрутка влево) значения
:type inScrollClickCountInt: int, обязательный
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опциональный
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
hscroll(inScrollClickCountInt, x=inXInt, y=inYInt)
time.sleep(inWaitAfterSecFloat)

@ -43,16 +43,5 @@ Resources\WPy64-3720\python-3.7.2.amd64\python.exe
] ]
# Open RPA Wiki
- [Home](https://gitlab.com/UnicodeLabs/OpenRPA/wikis/home) Created by pyOpenRPA LLC (Ivan Maslov)
- [04. Desktop app access (win32 & ui automation)](https://gitlab.com/UnicodeLabs/OpenRPA/wikis/04.-Desktop-app-access-(win32-&-ui-automation))
#Dependencies
* Python 3 x32 [psutil, pywinauto, wmi, PIL, keyboard, pyautogui, win32api (pywin32), selenium, openCV, tesseract, requests, lxml, PyMuPDF]
* Python 3 x64 [psutil, pywinauto, wmi, PIL, keyboard, pyautogui, win32api (pywin32), selenium, openCV, tesseract, requests, lxml, PyMuPDF]
* pywinauto (Windows GUI automation)
* Semantic UI CSS framework
* JsRender by https://www.jsviews.com (switch to Handlebars)
* Handlebars
Created by Unicode Labs (Ivan Maslov)

@ -1,9 +1,9 @@
r""" r"""
The OpenRPA package (from UnicodeLabs) The pyOpenRPA package
""" """
__version__ = 'v1.2.12' __version__ = 'v1.2.13'
__all__ = [] __all__ = []
__author__ = 'Ivan Maslov <ivan.maslov@unicodelabs.ru>' __author__ = 'Ivan Maslov <ivan.maslov@pyopenrpa.ru>'
#from .Core import Robot #from .Core import Robot

@ -1,6 +1,6 @@
Metadata-Version: 2.1 Metadata-Version: 2.1
Name: pyOpenRPA Name: pyOpenRPA
Version: 1.2.12 Version: 1.2.13
Summary: First open source RPA platform for business Summary: First open source RPA platform for business
Home-page: https://pyopenrpa.ru/ Home-page: https://pyopenrpa.ru/
Author: Ivan Maslov Author: Ivan Maslov

@ -1,9 +1,9 @@
pyOpenRPA-1.2.12.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 pyOpenRPA-1.2.13.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
pyOpenRPA-1.2.12.dist-info/METADATA,sha256=AmdWISfrdsF9DvjBrn42JJUXBb-TLln5OFBWKxX0VaE,4111 pyOpenRPA-1.2.13.dist-info/METADATA,sha256=HrNqM4-bPHXjqazFT4215H6pPafnYdCqattouxZIzVc,4111
pyOpenRPA-1.2.12.dist-info/RECORD,, pyOpenRPA-1.2.13.dist-info/RECORD,,
pyOpenRPA-1.2.12.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 pyOpenRPA-1.2.13.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
pyOpenRPA-1.2.12.dist-info/WHEEL,sha256=qB97nP5e4MrOsXW5bIU5cUn_KSVr10EV0l-GCHG9qNs,97 pyOpenRPA-1.2.13.dist-info/WHEEL,sha256=qB97nP5e4MrOsXW5bIU5cUn_KSVr10EV0l-GCHG9qNs,97
pyOpenRPA-1.2.12.dist-info/top_level.txt,sha256=RPzwQXgYBRo_m5L3ZLs6Voh8aEkMeT29Xsul1w1qE0g,10 pyOpenRPA-1.2.13.dist-info/top_level.txt,sha256=RPzwQXgYBRo_m5L3ZLs6Voh8aEkMeT29Xsul1w1qE0g,10
pyOpenRPA/.idea/inspectionProfiles/profiles_settings.xml,sha256=YXLFmX7rPNGcnKK1uX1uKYPN0fpgskYNe7t0BV7cqkY,174 pyOpenRPA/.idea/inspectionProfiles/profiles_settings.xml,sha256=YXLFmX7rPNGcnKK1uX1uKYPN0fpgskYNe7t0BV7cqkY,174
pyOpenRPA/.idea/misc.xml,sha256=V-fQnOz-bYEZULgfbFgm-8mURphZrKfXMSd0wKjeEyA,188 pyOpenRPA/.idea/misc.xml,sha256=V-fQnOz-bYEZULgfbFgm-8mURphZrKfXMSd0wKjeEyA,188
pyOpenRPA/.idea/modules.xml,sha256=Q__U1JIA2cjxbLRXAv-SfYY00fZA0TNlpkkbY4s3ncg,277 pyOpenRPA/.idea/modules.xml,sha256=Q__U1JIA2cjxbLRXAv-SfYY00fZA0TNlpkkbY4s3ncg,277
@ -26,9 +26,9 @@ pyOpenRPA/LICENSE.pdf,sha256=HEqffy8FIWpylw0zF7k-Wgwd8ppWQT9s9EGBgKV-6G8,321175
pyOpenRPA/Orchestrator/BackwardCompatibility.py,sha256=ABr0RugbBsIGdL5GE_EFC9QndSaKjvrjawvluhUNuMY,37795 pyOpenRPA/Orchestrator/BackwardCompatibility.py,sha256=ABr0RugbBsIGdL5GE_EFC9QndSaKjvrjawvluhUNuMY,37795
pyOpenRPA/Orchestrator/ControlPanel.py,sha256=OzS8HjG__8OZgqhajr8L8owyugXPuSLWHLtXuKdEP78,103 pyOpenRPA/Orchestrator/ControlPanel.py,sha256=OzS8HjG__8OZgqhajr8L8owyugXPuSLWHLtXuKdEP78,103
pyOpenRPA/Orchestrator/Core.py,sha256=OHa3mSC3_wRAizqrWBVjlR6ln4-xVVvBpOSnWl6qVvY,529 pyOpenRPA/Orchestrator/Core.py,sha256=OHa3mSC3_wRAizqrWBVjlR6ln4-xVVvBpOSnWl6qVvY,529
pyOpenRPA/Orchestrator/Managers/ControlPanel.py,sha256=BgtLjb6PR6kTlOjPLCg2YGP458LS9JOaYEfNurhS0nk,16544 pyOpenRPA/Orchestrator/Managers/ControlPanel.py,sha256=XpmN_LB--phNq4VpsbdWHJC6ybIt7jWBsl6HKfxHP1I,16550
pyOpenRPA/Orchestrator/Managers/Git.py,sha256=dgXx2UzSwiEev4ov2hBbb-5MhXVhFKWZo2lmr19QSCQ,12582 pyOpenRPA/Orchestrator/Managers/Git.py,sha256=dgXx2UzSwiEev4ov2hBbb-5MhXVhFKWZo2lmr19QSCQ,12582
pyOpenRPA/Orchestrator/Managers/Process.py,sha256=7T_qofdkRJHdPQbaiEsTDOboImSf2N6d_Ku513rURkw,41369 pyOpenRPA/Orchestrator/Managers/Process.py,sha256=DYX1pBK4gaxcfmDj-1OaLNyk83D_R_7ztZyt0SHWoik,41377
pyOpenRPA/Orchestrator/Managers/__init__.py,sha256=4my0XiwmI_QLRQVhOzNvWTggCosF3tb2yRxGkehOCq0,71 pyOpenRPA/Orchestrator/Managers/__init__.py,sha256=4my0XiwmI_QLRQVhOzNvWTggCosF3tb2yRxGkehOCq0,71
pyOpenRPA/Orchestrator/Managers/__pycache__/ControlPanel.cpython-37.pyc,, pyOpenRPA/Orchestrator/Managers/__pycache__/ControlPanel.cpython-37.pyc,,
pyOpenRPA/Orchestrator/Managers/__pycache__/Git.cpython-37.pyc,, pyOpenRPA/Orchestrator/Managers/__pycache__/Git.cpython-37.pyc,,
@ -81,7 +81,7 @@ pyOpenRPA/Orchestrator/Web/Index.js,sha256=YACiZAvjr6NmFlDhQu6urkJp49BX7L8WJU9p-
pyOpenRPA/Orchestrator/Web/Index.xhtml,sha256=5JUAs5rEiU0XtHM9QO6EdNMBGt-W6QOVGY7xJ_HLPFM,19257 pyOpenRPA/Orchestrator/Web/Index.xhtml,sha256=5JUAs5rEiU0XtHM9QO6EdNMBGt-W6QOVGY7xJ_HLPFM,19257
pyOpenRPA/Orchestrator/Web/__pycache__/Basic.cpython-37.pyc,, pyOpenRPA/Orchestrator/Web/__pycache__/Basic.cpython-37.pyc,,
pyOpenRPA/Orchestrator/Web/favicon.ico,sha256=6S8XwSQ_3FXPpaX6zYkf8uUewVXO9bHnrrDHEoWrEgw,112922 pyOpenRPA/Orchestrator/Web/favicon.ico,sha256=6S8XwSQ_3FXPpaX6zYkf8uUewVXO9bHnrrDHEoWrEgw,112922
pyOpenRPA/Orchestrator/__Orchestrator__.py,sha256=Zud6HTAHSsfTJVrszML5EjGTqlA7k5qhthZTsSD1pX8,151055 pyOpenRPA/Orchestrator/__Orchestrator__.py,sha256=rlM-j8LK4BdcPfI8KNMOi1Rq-Ht8kCLs6WYsPBZgDTU,203081
pyOpenRPA/Orchestrator/__init__.py,sha256=nJhjYtBXKOUNX_yNu1rRFk5y9cDz6AFiL0M6KgX_utQ,207 pyOpenRPA/Orchestrator/__init__.py,sha256=nJhjYtBXKOUNX_yNu1rRFk5y9cDz6AFiL0M6KgX_utQ,207
pyOpenRPA/Orchestrator/__main__.py,sha256=czJrc7_57WiO3EPIYfPeF_LG3pZsQVmuAYgbl_YXcVU,273 pyOpenRPA/Orchestrator/__main__.py,sha256=czJrc7_57WiO3EPIYfPeF_LG3pZsQVmuAYgbl_YXcVU,273
pyOpenRPA/Orchestrator/__pycache__/BackwardCompatibility.cpython-37.pyc,, pyOpenRPA/Orchestrator/__pycache__/BackwardCompatibility.cpython-37.pyc,,
@ -270,15 +270,15 @@ pyOpenRPA/Resources/Web/Semantic-UI-CSS-master/themes/default/assets/fonts/outli
pyOpenRPA/Resources/Web/Semantic-UI-CSS-master/themes/default/assets/images/flags.png,sha256=lNXH8WYTAcSm3Ekdct1VmgYgzZF6gm8N8bAju5bqnd0,28123 pyOpenRPA/Resources/Web/Semantic-UI-CSS-master/themes/default/assets/images/flags.png,sha256=lNXH8WYTAcSm3Ekdct1VmgYgzZF6gm8N8bAju5bqnd0,28123
pyOpenRPA/Resources/Web/jQuery/jquery-3.1.1.min.js,sha256=HPMOWdIdSuVgr3FD9ZE-_MgiK8qk_MdQjrgCtfqp6U4,86713 pyOpenRPA/Resources/Web/jQuery/jquery-3.1.1.min.js,sha256=HPMOWdIdSuVgr3FD9ZE-_MgiK8qk_MdQjrgCtfqp6U4,86713
pyOpenRPA/Resources/Web/pyOpenRPA_logo.png,sha256=7rulXo_C57xJQEaYWmAkChxXb6xbDW2zq-werzVbDbc,4899 pyOpenRPA/Resources/Web/pyOpenRPA_logo.png,sha256=7rulXo_C57xJQEaYWmAkChxXb6xbDW2zq-werzVbDbc,4899
pyOpenRPA/Robot/Clipboard.py,sha256=q76X8L21zJwcwdoJJNPeCEwAV30xS6ylHP1WwvtxoWI,722 pyOpenRPA/Robot/Clipboard.py,sha256=ntvXqnJpgmTPnehrjfVibrM72-AYLrqOn-CI2xVOaDs,1577
pyOpenRPA/Robot/Keyboard.py,sha256=k_5uNh7UWq5F4TKGbe4LpJwqWgUrftNieWm51HOgOBI,22 pyOpenRPA/Robot/Keyboard.py,sha256=6Ah71EaETse2_nPiz8EPW_fZBlhpaZg5WZ6tWZ2wC9U,17898
pyOpenRPA/Robot/Mouse.py,sha256=tBW9yteyEv9znJePOfbZcU3YqxX42wyu4Wc09fVaO0c,23 pyOpenRPA/Robot/Mouse.py,sha256=Wvai_tpanqREj5jA4tFEl_-0L45cpk41cX5_Ex68mBg,16079
pyOpenRPA/Robot/OrchestratorConnector.py,sha256=JUtdiUXCruqUqBD19gJBl9jk_b-tpWWx_v3MfBoKzoQ,20445 pyOpenRPA/Robot/OrchestratorConnector.py,sha256=JUtdiUXCruqUqBD19gJBl9jk_b-tpWWx_v3MfBoKzoQ,20445
pyOpenRPA/Robot/README.md,sha256=e2hKh7Tx6DAsX6jY_hBDhguL1L2Wiv6iugDB5otMzIA,2293 pyOpenRPA/Robot/README.md,sha256=bwiTAygxuMZzBlwpsndw2QgxA2smIjUyOPZnsnR341k,1623
pyOpenRPA/Robot/Screen.py,sha256=tBW9yteyEv9znJePOfbZcU3YqxX42wyu4Wc09fVaO0c,23 pyOpenRPA/Robot/Screen.py,sha256=tBW9yteyEv9znJePOfbZcU3YqxX42wyu4Wc09fVaO0c,23
pyOpenRPA/Robot/SettingsTemplate.py,sha256=Rp5XPeV2I4tCS2uf4Zkqm_ERJ6pZMg4-e5_lMqGJYLk,1453 pyOpenRPA/Robot/SettingsTemplate.py,sha256=Rp5XPeV2I4tCS2uf4Zkqm_ERJ6pZMg4-e5_lMqGJYLk,1453
pyOpenRPA/Robot/Test.py,sha256=qXr990nXiFZX5SNv6QN9GLb_U4HZRmJnbZR2qSnwilY,2878 pyOpenRPA/Robot/Test.py,sha256=qXr990nXiFZX5SNv6QN9GLb_U4HZRmJnbZR2qSnwilY,2878
pyOpenRPA/Robot/UIDesktop.py,sha256=EllVup0umNNFqcQrrO6pffdoTBzc5Y-jEKrY0oO7joU,82938 pyOpenRPA/Robot/UIDesktop.py,sha256=y0lHHtn-Cd7I1rUQGgBYfZQpfcrGBAfMST9F5aPIxtM,124815
pyOpenRPA/Robot/UIWeb.py,sha256=NFH0brDKEmWWOJxMzO7404K5lJ4LaDn5XMnkoH13Y64,22 pyOpenRPA/Robot/UIWeb.py,sha256=NFH0brDKEmWWOJxMzO7404K5lJ4LaDn5XMnkoH13Y64,22
pyOpenRPA/Robot/Utils/JSONNormalize.py,sha256=aIuVzuZDazhxkCOzoOjfhHVz66mp2FWdfPv5E7KWF5Y,3890 pyOpenRPA/Robot/Utils/JSONNormalize.py,sha256=aIuVzuZDazhxkCOzoOjfhHVz66mp2FWdfPv5E7KWF5Y,3890
pyOpenRPA/Robot/Utils/ProcessBitness.py,sha256=WlKL-DklGaoTnchtapOTM_ydxSB4yOeo9lcG3zr2VME,4524 pyOpenRPA/Robot/Utils/ProcessBitness.py,sha256=WlKL-DklGaoTnchtapOTM_ydxSB4yOeo9lcG3zr2VME,4524
@ -364,6 +364,6 @@ pyOpenRPA/Tools/__pycache__/License.cpython-37.pyc,,
pyOpenRPA/Tools/__pycache__/StopSafe.cpython-37.pyc,, pyOpenRPA/Tools/__pycache__/StopSafe.cpython-37.pyc,,
pyOpenRPA/Tools/__pycache__/Usage.cpython-37.pyc,, pyOpenRPA/Tools/__pycache__/Usage.cpython-37.pyc,,
pyOpenRPA/Tools/__pycache__/__init__.cpython-37.pyc,, pyOpenRPA/Tools/__pycache__/__init__.cpython-37.pyc,,
pyOpenRPA/__init__.py,sha256=fmC6rG7L4TIer8c0qUyp-Ypv2d7C2TBucEjIg7Wwip4,175 pyOpenRPA/__init__.py,sha256=Q9zi3T0F5hLslWv3SoO1EvZt17wEU5fq3JJ59uqdtg8,156
pyOpenRPA/__pycache__/__init__.cpython-37.pyc,, pyOpenRPA/__pycache__/__init__.cpython-37.pyc,,
pyOpenRPA/test.txt,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0 pyOpenRPA/test.txt,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0

@ -39,6 +39,7 @@ class ControlPanel():
Jinja2DataUpdateDictSet Jinja2DataUpdateDictSet
.. code-block:: html .. code-block:: html
Hello my control panel! Hello my control panel!
You can use any def from Orchestrator module here in Jinja2 HTML template: You can use any def from Orchestrator module here in Jinja2 HTML template:
Example: OrchestratorModule.OSCMD(inCMDStr="notepad") Example: OrchestratorModule.OSCMD(inCMDStr="notepad")

@ -22,6 +22,7 @@ class Process():
- 5_STARTED_MANUAL - 5_STARTED_MANUAL
.. code-block:: python .. code-block:: python
# For the safe init class use ProcessInitSafe # For the safe init class use ProcessInitSafe
lProcess = Orchestrator.Managers.ProcessInitSafe(inAgentHostNameStr="PCNAME",inAgentUserNameStr="USER", lProcess = Orchestrator.Managers.ProcessInitSafe(inAgentHostNameStr="PCNAME",inAgentUserNameStr="USER",
inProcessNameWOExeStr="notepad",inStartCMDStr="notepad",inStopSafeTimeoutSecFloat=3) inProcessNameWOExeStr="notepad",inStartCMDStr="notepad",inStopSafeTimeoutSecFloat=3)
@ -35,6 +36,7 @@ class Process():
How to use StopSafe on the robot side How to use StopSafe on the robot side
.. code-block:: python .. code-block:: python
from pyOpenRPA.Tools import StopSafe from pyOpenRPA.Tools import StopSafe
StopSafe.Init(inLogger=None) StopSafe.Init(inLogger=None)
StopSafe.IsSafeStop() # True - WM_CLOSE SIGNAL has come. taskkill /im someprocess.exe StopSafe.IsSafeStop() # True - WM_CLOSE SIGNAL has come. taskkill /im someprocess.exe

@ -4,17 +4,42 @@ import win32clipboard
#################################### ####################################
# GUI Module - interaction with Windows clipboard # GUI Module - interaction with Windows clipboard
################ def Get():
###ClipboardGet """
################ Получить текстовое содержимое буфера обмена.
.. code-block:: python
# Clipboard: Взаимодействие с буфером
from pyOpenRPA.Robot import Clipboard
lClipStr = Clipboard.Get()
:return: Текстовое содержимое буфера обмена
:rtype: str
"""
return ClipboardGet()
def Set(inTextStr:str):
"""
Установить текстовое содержимое в буфер обмена.
.. code-block:: python
# Clipboard: Взаимодействие с буфером
from pyOpenRPA.Robot import Clipboard
lClipStr = Clipboard.Set(inTextStr="HELLO WORLD")
:param inTextStr: Текстовое содержимое для установки в буфера обмена
:type inTextStr: str
"""
ClipboardSet(inText=inTextStr)
def ClipboardGet(): def ClipboardGet():
win32clipboard.OpenClipboard() win32clipboard.OpenClipboard()
lResult = win32clipboard.GetClipboardData(win32clipboard.CF_UNICODETEXT) lResult = win32clipboard.GetClipboardData(win32clipboard.CF_UNICODETEXT)
win32clipboard.CloseClipboard() win32clipboard.CloseClipboard()
return lResult return lResult
################
###ClipboardSet
################
def ClipboardSet(inText): def ClipboardSet(inText):
win32clipboard.OpenClipboard() win32clipboard.OpenClipboard()
win32clipboard.EmptyClipboard() win32clipboard.EmptyClipboard()

@ -1 +1,344 @@
from keyboard import * from keyboard import *
import time
# Настройки модуля Keyboard
WAIT_AFTER_SEC_FLOAT = 0.4 # Время, которое ожидать после выполнения любой операции модуля Keyboard. Настройка является единой для всех участов кода, использующих модуль Keyboard. Если для некоторой функции требуется изменить данное время ожидания, то в отношении этой функции можно применить соответсвующий аргумент.
# ШЕСТНАДЦАТИРИЧНЫЙ СКАН-КОД В РУССКОЙ РАСКЛАДКЕ (НЕЗАВИСИМО ОТ ВЫБРАННОГО ЯЗЫКА НА КЛАВИАТУРЕ)
# ОТОБРАЖЕНИЕ СКАН КОДОВ НА КЛАВИАТУРЕ https://snipp.ru/handbk/scan-codes
KEY_RUS_Ф = 0x1E #A
KEY_RUS_И = 0x30 #B
KEY_RUS_С = 0x2E #C
KEY_RUS_В = 0x20 #D
KEY_RUS_У = 0x12 #E
KEY_RUS_А = 0x21 #F
KEY_RUS_П = 0x22 #G
KEY_RUS_Р = 0x23 #H
KEY_RUS_Ш = 0x17 #I
KEY_RUS_О = 0x24 #J
KEY_RUS_Л = 0x25 #K
KEY_RUS_Д = 0x26 #L
KEY_RUS_Ь = 0x32 #M
KEY_RUS_Т = 0x31 #N
KEY_RUS_Щ = 0x18 #O
KEY_RUS_З = 0x19 #P
KEY_RUS_Й = 0x10 #Q
KEY_RUS_К = 0x13 #R
KEY_RUS_Ы = 0x1F #S
KEY_RUS_Е = 0x14 #T
KEY_RUS_Г = 0x16 #U
KEY_RUS_М = 0x2F #V
KEY_RUS_Ц = 0x11 #W
KEY_RUS_Ч = 0x2D #X
KEY_RUS_Н = 0x15 #Y
KEY_RUS_Я = 0x2C #Z
KEY_RUS_Ё = 0x29 #~
KEY_RUS_Ж = 0x27 #:
KEY_RUS_Б = 0x33 #<
KEY_RUS_Ю = 0x34 #>
KEY_RUS_Х = 0x1A #[
KEY_RUS_Ъ = 0x1B #]
KEY_RUS_Э = 0x28 #'
KEY_ENG_A = 0x1E #A
KEY_ENG_B = 0x30 #B
KEY_ENG_C = 0x2E #C
KEY_ENG_D = 0x20 #D
KEY_ENG_E = 0x12 #E
KEY_ENG_F = 0x21 #F
KEY_ENG_G = 0x22 #G
KEY_ENG_H = 0x23 #H
KEY_ENG_I = 0x17 #I
KEY_ENG_J = 0x24 #J
KEY_ENG_K = 0x25 #K
KEY_ENG_L = 0x26 #L
KEY_ENG_M = 0x32 #M
KEY_ENG_N = 0x31 #N
KEY_ENG_O = 0x18 #O
KEY_ENG_P = 0x19 #P
KEY_ENG_Q = 0x10 #Q
KEY_ENG_R = 0x13 #R
KEY_ENG_S = 0x1F #S
KEY_ENG_T = 0x14 #T
KEY_ENG_U = 0x16 #U
KEY_ENG_V = 0x2F #V
KEY_ENG_W = 0x11 #W
KEY_ENG_X = 0x2D #X
KEY_ENG_Y = 0x15 #Y
KEY_ENG_Z = 0x2C #Z
KEY_HOT_NUMPAD_0 = 0x52
KEY_HOT_NUMPAD_1 = 0x4F
KEY_HOT_NUMPAD_2 = 0x50
KEY_HOT_NUMPAD_3 = 0x51
KEY_HOT_NUMPAD_4 = 0x4B
KEY_HOT_NUMPAD_5 = 0x4C
KEY_HOT_NUMPAD_6 = 0x4D
KEY_HOT_NUMPAD_7 = 0x47
KEY_HOT_NUMPAD_8 = 0x48
KEY_HOT_NUMPAD_9 = 0x49
KEY_HOT_NUMPAD_ASTERISK = 0x37 #*
KEY_HOT_NUMPAD_PLUS = 0x4E
KEY_HOT_NUMPAD_MINUS = 0x4A
KEY_HOT_NUMPAD_DELETE = 0x53
KEY_HOT_NUMPAD_SOLIDUS = 0x35 #/
KEY_HOT_NUMPAD_ENTER = 0x11c
KEY_HOT_F1 = 0x3B
KEY_HOT_F2 = 0x3C
KEY_HOT_F3 = 0x3D
KEY_HOT_F4 = 0x3E
KEY_HOT_F5 = 0x3F
KEY_HOT_F6 = 0x40
KEY_HOT_F7 = 0x41
KEY_HOT_F8 = 0x42
KEY_HOT_F9 = 0x43
KEY_HOT_F10 = 0x44
KEY_HOT_F11 = 0x57
KEY_HOT_F12 = 0x58
KEY_HOT_F13 = 0x7C
KEY_HOT_F14 = 0x7D
KEY_HOT_F15 = 0x7E
KEY_HOT_F16 = 0x7F
KEY_HOT_F17 = 0x80
KEY_HOT_F18 = 0x81
KEY_HOT_F19 = 0x82
KEY_HOT_F20 = 0x83
KEY_HOT_F21 = 0x84
KEY_HOT_F22 = 0x85
KEY_HOT_F23 = 0x86
KEY_HOT_F24 = 0x87
KEY_HOT_TILDE = 0x29 #~
KEY_HOT_COLON = 0x27 #:
KEY_HOT_PLUS = 0x0D #+
KEY_HOT_MINUS = 0x0C #-
KEY_HOT_LESS_THAN = 0x33 #< ,
KEY_HOT_GREATER_THAN = 0x34 #> .
KEY_HOT_SOLIDUS = 0x35 #/ ?
KEY_HOT_SQUARE_BRACKET_LEFT = 0x1A #[
KEY_HOT_SQUARE_BRACKET_RIGHT = 0x1B #]
KEY_HOT_APOSTROPHE = 0x28 #' "
KEY_HOT_VERTICAL_LINE = 0x2B #| \
KEY_HOT_ESC = 0x1
KEY_HOT_BACKSPACE = 0x0E
KEY_HOT_TAB = 0x0F
KEY_HOT_ENTER = 0x1C
KEY_HOT_CONTEXT_MENU = 0x15D
KEY_HOT_SHIFT_LEFT = 0x2A
KEY_HOT_SHIFT_RIGHT = 0x36
KEY_HOT_CTRL_LEFT = 0x1D
KEY_HOT_CTRL_RIGHT = 0x11D
KEY_HOT_ALT_LEFT = 0x38
KEY_HOT_ALT_RIGHT = 0x138
KEY_HOT_WIN_LEFT = 57435 #OLD AND DONT WORK 0x5B
KEY_HOT_WIN_RIGHT = 57436 #OLD AND DONT WORK 0x5C
KEY_HOT_CAPS_LOCK = 0x3A
KEY_HOT_NUM_LOCK = 0x45
KEY_HOT_SCROLL_LOCK = 0x46
KEY_HOT_END = 0x4F
KEY_HOT_HOME = 0x47
KEY_HOT_SPACE = 0x39
KEY_HOT_PAGE_UP = 0x49
KEY_HOT_PAGE_DOWN = 0x51
KEY_HOT_CLEAR = 0x4C
KEY_HOT_LEFT = 0x4B
KEY_HOT_UP = 0x48
KEY_HOT_RIGHT = 0x4D
KEY_HOT_DOWN = 0x50
KEY_HOT_PRINT_SCREEN = 0x137
KEY_HOT_INSERT = 0x52
KEY_HOT_DELETE = 0x53
KEY_HOT_0 = 0xB
KEY_HOT_1 = 0x2
KEY_HOT_2 = 0x3
KEY_HOT_3 = 0x4
KEY_HOT_4 = 0x5
KEY_HOT_5 = 0x6
KEY_HOT_6 = 0x7
KEY_HOT_7 = 0x8
KEY_HOT_8 = 0x9
KEY_HOT_9 = 0xA
def Write(inTextStr:str, inDelayFloat:float=0, inRestoreStateAfterBool:bool=True, inExactBool:bool=None, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""
Печатает текст, который был передан в переменной inTextStr (поддерживает передачу в одной строке символов разного языка). Не зависит от текущей раскладки клавиатуры! Посылает искусственные клавишные события в ОС, моделируя печать данного текста. Знаки, не доступные на клавиатуре, напечатаны как явный unicode знаки, использующие определенную для ОС функциональность, такие как alt+codepoint.
Чтобы гарантировать текстовую целостность, все в настоящее время нажатые ключи выпущены прежде текст напечатан, и модификаторы восстановлены впоследствии.
ВНИМАНИЕ! ПЕЧАТАЕТ ЛЮБУЮ СТРОКУ, ДАЖЕ В СОЧЕТАНИИ НЕСКОЛЬКИХ ЯЗЫКОВ ОДНОВРЕМЕННО. ДЛЯ РАБОТЫ С ГОРЯЧИМИ КЛАВИШАМИ ИСПОЛЬЗУЙ ФУНКЦИЮ Send, Up, Down, HotkeyCombination
.. code-block:: python
# Keyboard: Взаимодействие с клавиатурой
from pyOpenRPA.Robot import Keyboard
Keyboard.Write("Привет мой милый мир! Hello my dear world!")
:param inTextStr: Текст, отправляемый на печать. Не зависит от текущей раскладки клавиатуры!
:type inTextStr: str
:param inDelayFloat: Число секунд, которое ожидать между нажатиями. По умолчанию 0
:type inDelayFloat: float, опциональный
:param inRestoreStateAfterBool: Может использоваться, чтобы восстановить регистр нажатых ключей после того, как текст напечатан, т.е. нажимает ключи, которые были выпущены в начало.
:type inRestoreStateAfterBool: bool, опциональный
:param inExactBool: Печатает все знаки как явный unicode. Необязательный параметр
:type inExactBool: bool, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
write(text=inTextStr, delay=inDelayFloat, restore_state_after=inRestoreStateAfterBool, exact=inExactBool)
time.sleep(inWaitAfterSecFloat)
def HotkeyCombination(*inKeyList, inDelaySecFloat = 0.3,inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Получает перечень клавиш для одновременного нажатия. Между нажатиями программа ожидания время inDelaySecFloat
ВНИМАНИЕ! НЕ ЗАВИСИТ ОТ ТЕКУЩЕЙ РАСКЛАДКИ КЛАВИАТУРЫ
.. code-block:: python
# Keyboard: Взаимодействие с клавиатурой
from pyOpenRPA.Robot import Keyboard
Keyboard.HotkeyCombination(Keyboard.KEY_HOT_CTRL_LEFT,Keyboard.KEY_ENG_A) # Ctrl + a
Keyboard.HotkeyCombination(Keyboard.KEY_HOT_CTRL_LEFT,Keyboard.KEY_ENG_C) # Ctrl + c
Keyboard.HotkeyCombination(Keyboard.KEY_HOT_CTRL_LEFT,Keyboard.KEY_ENG_A)
Keyboard.HotkeyCombination(Keyboard.KEY_HOT_ALT_LEFT,Keyboard.KEY_HOT_TAB, Keyboard.KEY_HOT_TAB)
:param inKeyList: Список клавиш для одновременного нажатия. Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT,KEY_ENG_A
:param inDelaySecFloat: Интервал между нажатиями. Необходим в связи с тем, что операционной системе требуется время на реакцию на нажатие клавиш, по умолчанию: 0.3
:type inDelaySecFloat: float, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
for l_key_item in inKeyList:
if l_key_item == inKeyList[-1]:
send(l_key_item)
else:
press(l_key_item)
time.sleep(inDelaySecFloat)
lRevKeyList = list(reversed(inKeyList))
for l_key_item in lRevKeyList:
if l_key_item == lRevKeyList[0]:
pass
else:
release(l_key_item)
time.sleep(inDelaySecFloat)
time.sleep(inWaitAfterSecFloat)
def HotkeyCtrlA_CtrlC(inWaitAfterSecFloat:float=0.4) -> None:
"""Выполнить выделение текста, после чего скопировать его в буфер обмена
ВНИМАНИЕ! НЕ ЗАВИСИТ ОТ ТЕКУЩЕЙ РАСКЛАДКИ КЛАВИАТУРЫ
.. code-block:: python
# Keyboard: Взаимодействие с клавиатурой
from pyOpenRPA.Robot import Keyboard
Keyboard.HotkeyCtrlA_CtrlC() # Отправить команды: выделить все, скопировать в буфер обмена
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
HotkeyCombination(KEY_HOT_CTRL_LEFT,KEY_ENG_A) # Ctrl + a
HotkeyCombination(KEY_HOT_CTRL_LEFT,KEY_ENG_C) # Ctrl + c
time.sleep(inWaitAfterSecFloat)
def Send(inKeyInt:int, inDoPressBool:bool=True, inDoReleaseBool:bool=True,inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT) -> None:
"""
Имитация нажатия/отпускания любой физической клавиши. Посылает событие в операционную систему, которые выполняет нажатие и отпускание данной клавиши
ВНИМАНИЕ! ПРИ ПОПЫТКЕ ПЕЧАТИ ТЕКСТА БУДЕТ УЧИТЫВАТЬ ТЕКУЩУЮ РАСКЛАДКУ КЛАВИАТУРЫ. ДЛЯ ПЕЧАТИ ТЕКСТА ИСПОЛЬЗУЙ Write!
.. code-block:: python
# Keyboard: Взаимодействие с клавиатурой
from pyOpenRPA.Robot import Keyboard
Keyboard.Send(Keyboard.KEY_ENG_A) # Нажать клавишу A. Если будет активна русская раскладка, то будет выведена буква ф.
:param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT,KEY_ENG_A
:type inKeyInt: int
:param inDoPressBool: Выполнить событие нажатия клавиши, По умолчанию True
:type inDoPressBool: bool, опциональный
:param inDoReleaseBool: Выполнить событие отпускания клавиши, По умолчанию True
:type inDoReleaseBool: bool, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
send(hotkey=inKeyInt, do_press=inDoPressBool, do_release=inDoReleaseBool)
time.sleep(inWaitAfterSecFloat)
def Up(inKeyInt:int, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT) -> None:
"""
Отпустить (поднять) клавишу. Если клавиша уже была поднята, то ничего не произойдет.
ВНИМАНИЕ! ПРИ ПОПЫТКЕ ПЕЧАТИ ТЕКСТА БУДЕТ УЧИТЫВАТЬ ТЕКУЩУЮ РАСКЛАДКУ КЛАВИАТУРЫ. ДЛЯ ПЕЧАТИ ТЕКСТА ИСПОЛЬЗУЙ Write!
.. code-block:: python
# Keyboard: Взаимодействие с клавиатурой
from pyOpenRPA.Robot import Keyboard
Keyboard.Up(Keyboard.KEY_ENG_A) # Отпустить клавишу A.
:param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT, KEY_ENG_A
:type inKeyInt: int
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
send(hotkey=inKeyInt, do_press=False, do_release=True)
time.sleep(inWaitAfterSecFloat)
def Down(inKeyInt:int, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT) -> None:
"""
Нажать (опустить) клавишу. Если клавиша уже была опущена, то ничего не произойдет.
ВНИМАНИЕ! ПРИ ПОПЫТКЕ ПЕЧАТИ ТЕКСТА БУДЕТ УЧИТЫВАТЬ ТЕКУЩУЮ РАСКЛАДКУ КЛАВИАТУРЫ. ДЛЯ ПЕЧАТИ ТЕКСТА ИСПОЛЬЗУЙ Write!
.. code-block:: python
# Keyboard: Взаимодействие с клавиатурой
from pyOpenRPA.Robot import Keyboard
Keyboard.Down(Keyboard.KEY_ENG_A) # Отпустить клавишу A.
:param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT, KEY_ENG_A
:type inKeyInt: int
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
send(hotkey=inKeyInt, do_press=True, do_release=False)
time.sleep(inWaitAfterSecFloat)
def IsDown(inKeyInt:int) -> bool:
"""
Проверить, опущена ли клавиша. Вернет True если опущена; False если поднята.
ВНИМАНИЕ! ПРИ ПОПЫТКЕ ПЕЧАТИ ТЕКСТА БУДЕТ УЧИТЫВАТЬ ТЕКУЩУЮ РАСКЛАДКУ КЛАВИАТУРЫ. ДЛЯ ПЕЧАТИ ТЕКСТА ИСПОЛЬЗУЙ Write!
.. code-block:: python
# Keyboard: Взаимодействие с клавиатурой
from pyOpenRPA.Robot import Keyboard
lKeyAIsPressedBool = Keyboard.IsDown(Keyboard.KEY_ENG_A) # Проверить, опущена ли клавиша A.
:param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT, KEY_ENG_A
:type inKeyInt: int
"""
return is_pressed(inKeyInt)
def Wait(inKeyInt:int,inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Блокирует осуществление программы, пока данная обозначенная клавиша не будет нажата.
ВНИМАНИЕ! НЕ ЗАВИСИТ ОТ ТЕКУЩЕЙ РАСКЛАДКИ КЛАВИАТУРЫ. ОЖИДАЕТ НАЖАТИЕ СООТВЕТСВУЮЩЕЙ ФИЗИЧЕСКОЙ КЛАВИШИ
.. code-block:: python
# Keyboard: Взаимодействие с клавиатурой
from pyOpenRPA.Robot import Keyboard
Keyboard.Wait(Keyboard.KEY_ENG_A) # Ждать нажатие клавиши A.
:param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT,KEY_ENG_A
:type inKeyInt: int
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
wait(hotkey=inKeyInt)
time.sleep(inWaitAfterSecFloat)
key_to_scan_codes("win") # 2022 06 10 Люблю смотреть скан код клавиши Виндовс :)

@ -1 +1,173 @@
from pyautogui import * from pyautogui import *
import time
WAIT_AFTER_SEC_FLOAT = 0.4 # Настройка модуля Mouse: Время, которое ожидать после выполнения любой операции модуля Mouse. Настройка является единой для всех участов кода, использующих модуль Mouse. Если для некоторой функции требуется изменить данное время ожидания, то в отношении этой функции можно применить соответсвующий аргумент.
def Click(inXInt:int=None, inYInt:int=None, inClickCountInt:int=1, inIntervalSecFloat:float=0.0, inButtonStr:str='left', inMoveDurationSecFloat:float=0.0, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Нажатие (вниз) кнопки мыши и затем немедленно выпуск (вверх) её. Допускается следующая параметризация. Если не указаны inXInt и inYInt - клик производится по месту нахождения указателя мыши.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
.. code-block:: python
# Mouse: Взаимодействие с мышью
from pyOpenRPA.Robot import Mouse
Mouse.Click(100,150) #Выполнить нажатие левой клавиши мыши на экране по координатам: X(гор) 100px, Y(вер) 150px.
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опциональный
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опциональный
:param inClickCountInt: Количество нажатий (вниз и вверх) кнопкой мыши, По умолчанию 1
:type inClickCountInt: int, опциональный
:param inIntervalSecFloat: Интервал ожидания в секундах между нажатиями, По умолчанию 0.0
:type inIntervalSecFloat: float, опциональный
:param inButtonStr: Номер кнопки, которую требуется нажать. Возможные варианты: 'left', 'middle', 'right' или 1, 2, 3. В остальных случаях инициирует исключение ValueError. По умолчанию 'left'
:type inButtonStr: str, опциональный
:param inMoveDurationSecFloat: Время перемещения указателя мыши, По умолчанию 0.0 (моментальное перемещение)
:type inMoveDurationSecFloat: float, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
click(x=inXInt, y=inYInt, clicks=inClickCountInt, interval=inIntervalSecFloat, button=inButtonStr, duration=inMoveDurationSecFloat)
time.sleep(inWaitAfterSecFloat)
def ClickDouble(inXInt:int=None, inYInt:int=None, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Двойное нажатие левой клавиши мыши. Данное действие аналогично вызову функции (см. ниже).
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
.. code-block:: python
# Mouse: Взаимодействие с мышью
from pyOpenRPA.Robot import Mouse
Mouse.ClickDouble(100,150) #Выполнить двойное нажатие левой клавиши мыши на экране по координатам: X(гор) 100px, Y(вер) 150px.
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опциональный
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опциональный
:param inButtonStr: Номер кнопки, которую требуется нажать. Возможные варианты: 'left', 'middle', 'right' или 1, 2, 3. В остальных случаях инициирует исключение ValueError. По умолчанию 'left'
:type inButtonStr: str, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
doubleClick(x=inXInt, y=inYInt)
time.sleep(inWaitAfterSecFloat)
def Down(inXInt:int=None, inYInt:int=None, inButtonStr:str='left', inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Переместить указатель по координатам inXInt, inYInt, после чего нажать (вниз) клавишу мыши и не отпускать до выполнения соответсвующей команды (см. Up). Если координаты inXInt, inYInt не переданы - нажатие происходит на тех координатах X/Y, на которых указатель мыши находится.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
.. code-block:: python
# Mouse: Взаимодействие с мышью
from pyOpenRPA.Robot import Mouse
Mouse.Down() #Опустить левую клавишу мыши
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опциональный
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опциональный
:param inButtonStr: Номер кнопки, которую требуется нажать. Возможные варианты: 'left', 'middle', 'right' или 1, 2, 3. В остальных случаях инициирует исключение ValueError. По умолчанию 'left'
:type inButtonStr: str, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
mouseDown(x=inXInt, y=inYInt, button = inButtonStr)
time.sleep(inWaitAfterSecFloat)
def Up(inXInt:int=None, inYInt:int=None, inButtonStr:str='left', inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Отпустить (вверх) клавишу мыши. Если координаты inXInt, inYInt не переданы - нажатие происходит на тех координатах X/Y, на которых указатель мыши находится.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области.
.. code-block:: python
# Mouse: Взаимодействие с мышью
from pyOpenRPA.Robot import Mouse
Mouse.Up(inButtonStr:str='right') #Поднять правую клавишу мыши
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опциональный
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опциональный
:param inButtonStr: Номер кнопки, которую требуется поднять. Возможные варианты: 'left', 'middle', 'right' или 1, 2, 3. В остальных случаях инициирует исключение ValueError. По умолчанию 'left'
:type inButtonStr: str, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
mouseUp(x=inXInt, y=inYInt, button = inButtonStr)
time.sleep(inWaitAfterSecFloat)
def MoveTo(inXInt=None, inYInt=None, inMoveDurationSecFloat:float=0.0, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Переместить указатель мыши на позицию inXInt, inYInt за время inMoveDurationSecFloat.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
.. code-block:: python
# Mouse: Взаимодействие с мышью
from pyOpenRPA.Robot import Mouse
Mouse.MoveTo(inXInt=100, inYInt=200) #Переместить указатель мыши по координатам: X(гор) 100, Y(вер) 200
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опциональный
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опциональный
:param inMoveDurationSecFloat: Время перемещения указателя мыши, По умолчанию 0.0 (моментальное перемещение)
:type inMoveDurationSecFloat: float, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
moveTo(x=inXInt, y=inYInt, duration=inMoveDurationSecFloat)
time.sleep(inWaitAfterSecFloat)
def ScrollVertical(inScrollClickCountInt, inXInt=None, inYInt=None, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Переместить указатель мыши на позицию inXInt, inYInt и выполнить вертикальную прокрутку (скроллинг) колесом мыши на количество щелчков inScrollClickCountInt.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
.. code-block:: python
# Mouse: Взаимодействие с мышью
from pyOpenRPA.Robot import Mouse
Mouse.ScrollVertical(100, inXInt=100, inYInt=200) #Крутить колесо мыши вниз на 100 кликов по координатам: X(гор) 100, Y(вер) 200
Mouse.ScrollVertical(-100) #Крутить колесо мыши вверх на 100 кликов по текущим координатам указателя мыши.
:param inScrollClickCountInt: Количество щелчок колеса мыши, которое требуется !вертикально! прокрутить. Аргумент может принимать как положительное (прокрутка вниз), так и отрицательное (прокрутка вверх) значения
:type inScrollClickCountInt: int, обязательный
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опциональный
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
vscroll(inScrollClickCountInt, x=inXInt, y=inYInt)
time.sleep(inWaitAfterSecFloat)
def ScrollHorizontal(inScrollClickCountInt, inXInt=None, inYInt=None, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""!ТОЛЬКО ДЛЯ LINUX! Переместить указатель мыши на позицию inXInt, inYInt и выполнить горизонтальную прокрутку (скроллинг) виртуальным колесом мыши на количество щелчков inScrollClickCountInt.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
.. code-block:: python
# Mouse: Взаимодействие с мышью
from pyOpenRPA.Robot import Mouse
Mouse.ScrollHorizontal(100, inXInt=100, inYInt=200) #Крутить колесо мыши вниз на 100 кликов по координатам: X(гор) 100, Y(вер) 200
Mouse.ScrollHorizontal(-100) #Крутить колесо мыши вверх на 100 кликов по текущим координатам указателя мыши.
:param inScrollClickCountInt: Количество щелчок колеса мыши, которое требуется !горизонтально! прокрутить. Аргумент может принимать как положительное (прокрутка вправо), так и отрицательное (прокрутка влево) значения
:type inScrollClickCountInt: int, обязательный
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опциональный
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
hscroll(inScrollClickCountInt, x=inXInt, y=inYInt)
time.sleep(inWaitAfterSecFloat)

@ -43,16 +43,5 @@ Resources\WPy64-3720\python-3.7.2.amd64\python.exe
] ]
# Open RPA Wiki
- [Home](https://gitlab.com/UnicodeLabs/OpenRPA/wikis/home) Created by pyOpenRPA LLC (Ivan Maslov)
- [04. Desktop app access (win32 & ui automation)](https://gitlab.com/UnicodeLabs/OpenRPA/wikis/04.-Desktop-app-access-(win32-&-ui-automation))
#Dependencies
* Python 3 x32 [psutil, pywinauto, wmi, PIL, keyboard, pyautogui, win32api (pywin32), selenium, openCV, tesseract, requests, lxml, PyMuPDF]
* Python 3 x64 [psutil, pywinauto, wmi, PIL, keyboard, pyautogui, win32api (pywin32), selenium, openCV, tesseract, requests, lxml, PyMuPDF]
* pywinauto (Windows GUI automation)
* Semantic UI CSS framework
* JsRender by https://www.jsviews.com (switch to Handlebars)
* Handlebars
Created by Unicode Labs (Ivan Maslov)

@ -1,9 +1,9 @@
r""" r"""
The OpenRPA package (from UnicodeLabs) The pyOpenRPA package
""" """
__version__ = 'v1.2.12' __version__ = 'v1.2.13'
__all__ = [] __all__ = []
__author__ = 'Ivan Maslov <ivan.maslov@unicodelabs.ru>' __author__ = 'Ivan Maslov <ivan.maslov@pyopenrpa.ru>'
#from .Core import Robot #from .Core import Robot

@ -2,25 +2,37 @@
1. Первый запуск 1. Первый запуск
#################################### ####################################
Are you ready to install the pyOpenRPA solution on your machine? Готовы испытать всю мощь перспективных технологий?
Ok, we start. Будет очень интересно - начинаем!
**Do the following operations:**
- Download the pyOpenRPA package from master branch on GitLab [Download ZIP](https://gitlab.com/UnicodeLabs/OpenRPA/-/archive/master/OpenRPA-master.zip) **Для начала необходимо выполнить следующие действия:**
- Unzip the package
**Installation has been completed :)** - Скачать пакет pyOpenRPA c главной страницы https://pyopenrpa.ru/
- Распаковать пакет куда угодно!
**ВСЁ - Развертывание pyOpenRPA завершено! :)**
************************************************** **************************************************
How to check installation Проверить, что pyOpenRPA развернута корректно?
************************************************** **************************************************
- Run portable python (built in the pyOpenRPA) В папке pyOpenRPA запустить интерпретатор Python
- x32 python (GIT\\Resources\\WPy32-3720\\python-3.7.2\\python.exe) - x32 Python (GIT\\Resources\\WPy32-3720\\python-3.7.2\\python.exe)
- x64 python (GIT\\Resources\\WPy64-3720\\python-3.7.2.amd64\\python.exe) - x64 Python (GIT\\Resources\\WPy64-3720\\python-3.7.2.amd64\\python.exe)
**The pyOpenRPA has been successfully installed if the portable python 3.7.2 was started without any exceptions (see screenshot).** **Платформа pyOpenRPA успешно развернута корректно. если интерпретаторы python 3.7.2 были запущены без проблем (см. скриншот).**
.. image:: /img/cb5dec8cecafa7d64f6cd14b2672acce.png .. image:: /img/cb5dec8cecafa7d64f6cd14b2672acce.png
:alt: cb5dec8cecafa7d64f6cd14b2672acce.png :alt: cb5dec8cecafa7d64f6cd14b2672acce.png
******************************
Быстрая навигация
******************************
- `Сообщество pyOpenRPA (telegram) <https://t.me/pyOpenRPA>`_
- `Сообщество pyOpenRPA (tenchat) <https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24>`_
- `Сообщество pyOpenRPA (вконтакте) <https://vk.com/pyopenrpa>`_
- `Презентация pyOpenRPA <https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf>`_
- `Портал pyOpenRPA <https://pyopenrpa.ru>`_
- `Репозиторий pyOpenRPA <https://gitlab.com/UnicodeLabs/OpenRPA>`_

@ -80,4 +80,15 @@ pyOpenRPA - роботы Вам помогут!
- Handlebars, v4.1.2, лицензия MIT, https://github.com/handlebars-lang/handlebars.js/blob/master/LICENSE - Handlebars, v4.1.2, лицензия MIT, https://github.com/handlebars-lang/handlebars.js/blob/master/LICENSE
- jinja2, v2.11.2, лицензия BSD 3-Clause, https://github.com/pallets/jinja/blob/main/LICENSE.rst - jinja2, v2.11.2, лицензия BSD 3-Clause, https://github.com/pallets/jinja/blob/main/LICENSE.rst
- JupiterNotebook v6.1.4, лицензия BSD 3-Clause, https://github.com/jupyter/notebook/blob/main/LICENSE - JupiterNotebook v6.1.4, лицензия BSD 3-Clause, https://github.com/jupyter/notebook/blob/main/LICENSE
- schedule, v1.1.0, лицензия MIT, https://github.com/dbader/schedule/blob/master/LICENSE.txt - schedule, v1.1.0, лицензия MIT, https://github.com/dbader/schedule/blob/master/LICENSE.txt
******************************
Быстрая навигация
******************************
- `Сообщество pyOpenRPA (telegram) <https://t.me/pyOpenRPA>`_
- `Сообщество pyOpenRPA (tenchat) <https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24>`_
- `Сообщество pyOpenRPA (вконтакте) <https://vk.com/pyopenrpa>`_
- `Презентация pyOpenRPA <https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf>`_
- `Портал pyOpenRPA <https://pyopenrpa.ru>`_
- `Репозиторий pyOpenRPA <https://gitlab.com/UnicodeLabs/OpenRPA>`_

@ -1,5 +1,5 @@
#################################### ####################################
2. Defs 2. Функции
#################################### ####################################
************************************************** **************************************************
@ -11,13 +11,3 @@ pyOpenRPA.Agent.__Agent__
.. automodule:: pyOpenRPA.Agent.__Agent__ .. automodule:: pyOpenRPA.Agent.__Agent__
:members: :members:
:autosummary: :autosummary:
**********
References
**********
`reStructuredText`_
.. target-notes::
.. _`reStructuredText`: http://docutils.sourceforge.net/rst.html

@ -1,83 +1,75 @@
.. _module.orchestrator.dscription:
#################################### ####################################
1. Description 1. Описание
#################################### ####################################
pyOpenRPA Orchestrator is the executable process. ************************************
Общее
************************************
The features of the orchestrator is: Модуль оркестратор - это координирующее звено, которое обеспечивает бесперебойную работа массива роботов. Этот массив может состоять как из одного так и из тысячи роботов RPA.
- Centralized/decentralized user control interface (applicable and for business users and for technical users). Web based, support desktop, tablet, phone. **Основные возможности**
- Automatized robots control (customized algorithms, robots scheduling)
- Source code mega flexibility: Light Orchestrator architecture is good for own customization
************************************ - Запуск / пауза / безопасная остановка / принудительная остановка робота
Global settings dict concept - Интеллектуальное расписание
************************************ - Просмотр состояния графических сессий роботов через панель управления
pyOpenRPA project is complex tool which consist of several executable modules such as Robot, Orchestrator, Studio, - Удаленное администрирование сессий оркестратора и робота
- Среда отладки функциональности через панель управления оркестратора
- Консолидированное хранилище логов, доступное для просмотра через панель управления
- Ролевая модель разграничения доступа
- Функциональность очередей для координации роботов
Because of module compexity, we use 1 init arg - inGSettings ************************************************************************
inGSettings is a complex dictionary which has all reqired parameters for the module execution. Концепция единого глобального словаря настроек (GSettings)
************************************************************************
The description of the GSettings you can find in executable module details. pyOpenRPA - это сложное решение, которое направлено на упрощение жизни пользователей и разработчиков роботов.
************************************ Для того, чтобы предлагать рынку гибкое, адаптивное и надежное решение, одним из архитектурных решений был выбран подхъод хранения !ВСЕЙ! конфигурационной информации в едином словаре, который мы называем GSettings.
Orchestrator how to configure
************************************
GSettings - это многоуровневая и иерархичная структура, которая позволяет произвести широкую кастомизацию под свои нужды, и в то же время быть открытой к внедрению новых возможностей.
To init pyOpenRPA Orchestrator instance use script: Ознакомиться со структурой GSettings можно по ссылке: :ref:`module.orchestrator.gsettings`
from pyOpenRPA import Orchestrator # Import orchestrator main Мы не рекомендуем вносить изменения напрямую в GSettings, хоть мы и оставляем такую возможность. Для корректировки функциональности Вы можете воспользоваться соответствующей функцией в модуле Оркестратора (см. здесь: :ref:`module.orchestrator.defs`)
gSettings = SettingsTemplate.Create(inModeStr="BASIC") # Create GSettings with basic configuration
Orchestrator.Orchestrator(inGSettings=gSettings) # Call the orchestrator def
gSettings structure Используя специальные функции модуля Оркестратора вы существенно увеличиваете шансы бесшовного перехода на новые версии pyOpenRPA, если вам это потребуется.
************************************ ************************************
Orchestrator architecture Архитектура
************************************ ************************************
Orchestrator has several source code components: Оркестратор состоит из следующих основных потоков:
- User/robot activity consolidated queue single thread (Processor)
- User/robot activity asynchonus many threads (Processor)
- Scheduler single thread (main)
- RDP keep active many thread
- Autocleaner single thread
- GUI keep active single thread
- HTTP web server single thread (create user socket threads)
-
Below you can find more information about all of the component. - Процессорная очередь активностей (ActivityItem) (Processor)
- Функциональность асинхронного исполнения активностей (ActivityItem) (Processor)
- Поток интеллектуального расписания (main)
- Поток контроля активности RDP сессий
- Поток сбора мусорных данных
- Поток контроля графической сессии на учетной записи, где работает Оркестратор
- Поток веб-сервера Оркестратора
***************************
Component Processor
***************************
Sync - Append activity list to consolidated processor queue. Execution goes sequency by the activity list order
Async - Create New thread to execute the activity list Ознакомиться с возможностями и функциями оркестратора можно по ссылке: :ref:`module.orchestrator.defs`
- Activity list
List of the activity item Дорогие коллеги!
- Activity item Мы знаем, что с pyOpenRPA вы сможете существенно улучшить качество вашего бизнеса. Платформа роботизации pyOpenRPA - это разработка, которая дает возможность делать виртуальных сотрудников (программных роботов RPA) выгодными, начиная от эффекта всего в **10 тыс. руб.** И управлять ими будете только Вы!
Activity item is universal mechanism to execute different algorythms from any sources. Если у вас останутся вопросы, то вы всегда можете обратиться в центр поддержки клиентов pyOpenRPA. Контакты: :ref:`3.-Copyrights-&-Contacts`
The core feature of the Activity is to call python defs with args and kwargs.
If you need to init do some activity you can write some python def, then create Activity item with current def.
ATTENTION: In some cases (such as web transmition), when you can't transmit python def as object you can use symbolic names for python defs. It is apply you to init all of you want from the web UI.
?Why i cant transmit python def from the web pyOpenRPA - роботы помогут!
Because the WEB space is not the Python executable space. Interaction between it spaces create by JSON protocol. So, we know than JSON apply int, float, str, bool, None, list, dict - that is all.
.. note:: ******************************
Быстрая навигация
******************************
Example - `Сообщество pyOpenRPA (telegram) <https://t.me/pyOpenRPA>`_
{ - `Сообщество pyOpenRPA (tenchat) <https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24>`_
"Def":"DefAliasTest", # def link or def alias (look gSettings["Processor"]["AliasDefDict"]) - `Сообщество pyOpenRPA (вконтакте) <https://vk.com/pyopenrpa>`_
"ArgList":[1,2,3], # Args list - `Презентация pyOpenRPA <https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf>`_
"ArgDict":{"ttt":1,"222":2,"dsd":3}, # Args dictionary - `Портал pyOpenRPA <https://pyopenrpa.ru>`_
"ArgGSettings": None # Name of GSettings attribute: str (ArgDict) or index (for ArgList) - `Репозиторий pyOpenRPA <https://gitlab.com/UnicodeLabs/OpenRPA>`_
"ArgLogger": None # Name of GSettings attribute: str (ArgDict) or index (for ArgList)
}# Pay attention! Do not left comma symbol after the end of the dict - it can be interpretated like a turple..

@ -1,20 +1,26 @@
.. _module.orchestrator.defs:
#################################### ####################################
2. Функции 2. Функции
#################################### ####################################
**************************************************
Общее
**************************************************
Раздел содержит всю необходимую информацию о функциях pyOpenRPA.Orchestrator Раздел содержит всю необходимую информацию о функциях pyOpenRPA.Orchestrator
При необходимости вы всегда можете обратиться в центр поддержки клиентов pyOpenRPA. Контакты: :ref:`3.-Copyrights-&-Contacts` При необходимости вы всегда можете обратиться в центр поддержки клиентов pyOpenRPA. Контакты: :ref:`3.-Copyrights-&-Contacts`
************************************************** **************************************************
Что такое активность (ActivityItem) Что такое активность (ActivityItem)?
************************************************** **************************************************
Архитектура pyOpenRPA позволяет обмениваться сообщениями о выполнении функций через механизм активностей (ActivityItem). Архитектура pyOpenRPA позволяет обмениваться сообщениями о выполнении функций через механизм активностей (ActivityItem).
На стороне Агента и Оркестратора реализована процессорная очередь, которая последовательно выполняет поставленные активности. Результат этих активностей сообщается инициатору (см. функции группы Agent... в Оркестраторе) На стороне Агента и Оркестратора реализована процессорная очередь, которая последовательно выполняет поставленные активности. Результат этих активностей сообщается инициатору (см. функции группы Agent... в Оркестраторе)
************************************************** **************************************************
pyOpenRPA.Orchestrator.__Orchestrator__ Функции
************************************************** **************************************************
.. code-block:: python .. code-block:: python
@ -29,50 +35,50 @@ pyOpenRPA.Orchestrator.__Orchestrator__
Группа функций Agent... **Группа функций Agent...**
######################
Взаимодействие между Оркестратором и Агентом, который развертнут на других графических сессиях, где будет происходить запуск робота. Взаимодействие между Оркестратором и Агентом, который развертнут на других графических сессиях, где будет происходить запуск робота.
Группа функций GSettings... **Группа функций GSettings...**
######################
Вспомогательные функции для работы с глобальным словарем настроек Оркестратора Вспомогательные функции для работы с глобальным словарем настроек Оркестратора
Группа функций Storage... **Группа функций Storage...**
######################
Функции для взаимодействия со специальным хранилищем переменных, предназначенного для хранения информации от роботов. Функции для взаимодействия со специальным хранилищем переменных, предназначенного для хранения информации от роботов.
!ВНИМАНИЕ! Данное хранилище сохраняется при перезагрузке Оркестратора из панели управления. !ВНИМАНИЕ! Данное хранилище сохраняется при перезагрузке Оркестратора из панели управления.
Группа функций OS... **Группа функций OS...**
######################
Функции взаимодействия с командной строкой на сессии, где запущен Оркестратор. Функции взаимодействия с командной строкой на сессии, где запущен Оркестратор.
Группа функций Process... **Группа функций Process...**
######################
Запуск / остановка процессов на сессии Оркестратора. Запуск / остановка процессов на сессии Оркестратора.
Группа функций Processor... **Группа функций Processor...**
######################
Функции взаимодействия с процессорной очередью. Если требуется выполнить синхронизацию нескольких разных задач, то можно их отправлять в процессорную очередь. Функции взаимодействия с процессорной очередью. Если требуется выполнить синхронизацию нескольких разных задач, то можно их отправлять в процессорную очередь.
Группа функций Python... **Группа функций Python...**
######################
Функции взаимодействия с Python модулями. Функции взаимодействия с Python модулями.
Группа функций RDPSession... **Группа функций RDPSession...**
######################
Запуск, отключение, перезапуск, отправка CMD команд, раскрыть на весь экран на RDP сессию Запуск, отключение, перезапуск, отправка CMD команд, раскрыть на весь экран на RDP сессию
Группа функций Web... **Группа функций Web...**
######################
Управление веб-сервером Оркестратора. Управление веб-сервером Оркестратора.
Группа функций UAC... **Группа функций UAC...**
######################
Управление ролевой моделью доступа пользователей к панели управления Оркестратора. Актуально для подключения бизнес-пользователей. Управление ролевой моделью доступа пользователей к панели управления Оркестратора. Актуально для подключения бизнес-пользователей.
Группа функций Scheduler... **Группа функций Scheduler...**
######################
Установка расписания на различные активности. Установка расписания на различные активности.
@ -81,10 +87,13 @@ pyOpenRPA.Orchestrator.__Orchestrator__
:autosummary: :autosummary:
************************************************** ******************************
pyOpenRPA.Orchestrator.Web.Basic Быстрая навигация
************************************************** ******************************
.. automodule:: pyOpenRPA.Orchestrator.Web.Basic - `Сообщество pyOpenRPA (telegram) <https://t.me/pyOpenRPA>`_
:members: - `Сообщество pyOpenRPA (tenchat) <https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24>`_
:autosummary: - `Сообщество pyOpenRPA (вконтакте) <https://vk.com/pyopenrpa>`_
- `Презентация pyOpenRPA <https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf>`_
- `Портал pyOpenRPA <https://pyopenrpa.ru>`_
- `Репозиторий pyOpenRPA <https://gitlab.com/UnicodeLabs/OpenRPA>`_

@ -1,9 +1,29 @@
.. _gSettingsTemplate: .. _module.orchestrator.gsettings:
************************
3. gSettings Template
************************
gSettings structure #############################################
3. Настройки GSettings (шаблон)
#############################################
******************************
Общее
******************************
Ниже представлена структура единого глобального словаря настроек GSettings
******************************
Структура
******************************
.. include:: ../../pyOpenRPA/Orchestrator/SettingsTemplate.py .. include:: ../../pyOpenRPA/Orchestrator/SettingsTemplate.py
:literal: :literal:
******************************
Быстрая навигация
******************************
- `Сообщество pyOpenRPA (telegram) <https://t.me/pyOpenRPA>`_
- `Сообщество pyOpenRPA (tenchat) <https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24>`_
- `Сообщество pyOpenRPA (вконтакте) <https://vk.com/pyopenrpa>`_
- `Презентация pyOpenRPA <https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf>`_
- `Портал pyOpenRPA <https://pyopenrpa.ru>`_
- `Репозиторий pyOpenRPA <https://gitlab.com/UnicodeLabs/OpenRPA>`_

@ -1,8 +1,17 @@
************************ #################################
4. How to use 4. Как использовать?
************************ #################################
You need to run orchestrator process? ******************************
Как запустить?
******************************
Хотите выполнить запуск Оркестратора?
**Для этого достаточно (выбрать одно):**
- запустить .cmd файл, расположенный в папке pyOpenRPA по адресу: Orchestrator\pyOpenRPA.Orchestrator_x64.cmd
- в свой .py скрипт добавить следующий код (см. ниже)
.. code-block:: python .. code-block:: python
@ -13,7 +22,23 @@ You need to run orchestrator process?
Orchestrator.Orchestrator(inGSettings=gSettings) Orchestrator.Orchestrator(inGSettings=gSettings)
If you need more configurations - so you can see here: ******************************
Параметры настройки
******************************
Также вы можете выполнить более тонкую настройку параметров Оркестратора. Ниже пример такой настройки:
.. include:: ../../../Orchestrator/OrchestratorSettings.py .. include:: ../../../Orchestrator/OrchestratorSettings.py
:literal: :literal:
******************************
Быстрая навигация
******************************
- `Сообщество pyOpenRPA (telegram) <https://t.me/pyOpenRPA>`_
- `Сообщество pyOpenRPA (tenchat) <https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24>`_
- `Сообщество pyOpenRPA (вконтакте) <https://vk.com/pyopenrpa>`_
- `Презентация pyOpenRPA <https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf>`_
- `Портал pyOpenRPA <https://pyopenrpa.ru>`_
- `Репозиторий pyOpenRPA <https://gitlab.com/UnicodeLabs/OpenRPA>`_

@ -1,21 +1,23 @@
#################################### ####################################
5. UAC - User Access Control 5. Права доступа пользователей UAC
#################################### ####################################
***************** *****************
About Описание
***************** *****************
Orchestrator has mega feature - user access control (UAC). This feature allow you to manipulate access of the web UI for the all users! Оркестратор обладает уникальным и гибким механизмом контроля и распределения прав доступа пользователей (UAC - User Access Control). Концепция pyOpenRPA заключается в том, что настройка доступа должна быть максимально функциональной, но при этом удобной в использовании.
If you need to give admin rights - you don't customize UAC dict. Если требуется дать все права доступа - не нужно ничего редактировать - они будут по умолчанию.
If you need to give some little rights for user only for one robot in orchestrator web panel - you can set the following properties in UAC dict. Если нужно внести корректировки - вы можете указать лишь те ключи доступа, которые потребуются пользователю.
To work with UAC you can use defs ``Orchestrator.UAC`` group. Также UAC механизм распределения прав доступа отлично интегрируется со сторонними системами безопасности, которые уже используются в компаниях, например Active Directory и другие.
!!!ATTENTION!!! Функции по работе с UAC представлены в группе ``Orchestrator.UAC`` в разделе описания функций: :ref:`module.orchestrator.defs`.
Need practice example to work with UAC! - too hard to understand Если у вас останутся вопросы, то вы всегда можете обратиться в центр поддержки клиентов pyOpenRPA. Контакты: :ref:`3.-Copyrights-&-Contacts`
pyOpenRPA - роботы помогут!
*************************************************** ***************************************************
UAC Dict for Orchestrator WEB UI rights UAC Dict for Orchestrator WEB UI rights
@ -55,4 +57,16 @@ UAC Dict for pyOpenRPA Orchestrator WEB UI rights.
"ActivityListExecuteBool": True, # Execute activity at the current thread "ActivityListExecuteBool": True, # Execute activity at the current thread
"ActivityListAppendProcessorQueueBool": True # Append activity to the processor queue "ActivityListAppendProcessorQueueBool": True # Append activity to the processor queue
} }
} }
******************************
Быстрая навигация
******************************
- `Сообщество pyOpenRPA (telegram) <https://t.me/pyOpenRPA>`_
- `Сообщество pyOpenRPA (tenchat) <https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24>`_
- `Сообщество pyOpenRPA (вконтакте) <https://vk.com/pyopenrpa>`_
- `Презентация pyOpenRPA <https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf>`_
- `Портал pyOpenRPA <https://pyopenrpa.ru>`_
- `Репозиторий pyOpenRPA <https://gitlab.com/UnicodeLabs/OpenRPA>`_

@ -1,52 +0,0 @@
####################################
6. Defs Managers
####################################
**************************************************
Process (General)
**************************************************
.. code-block:: python
# EXAMPLE
from pyOpenRPA.Orchestrator import Orchestrator
lProcess = Orchestrator.Managers.Process(inAgentHostNameStr="PC-DESKTOP",inAgentUserNameStr="ND", inProcessNameWOExeStr="notepad",inStartCMDStr="notepad")
.. automodule:: pyOpenRPA.Orchestrator.Managers.Process
:members:
:autosummary:
**************************************************
Process (Details)
**************************************************
.. automodule:: pyOpenRPA.Orchestrator.Managers.Process
:members:
:autosummary:
**************************************************
ControlPanel (General)
**************************************************
.. code-block:: python
# EXAMPLE
from pyOpenRPA.Orchestrator import Orchestrator
lCP = Orchestrator.Managers.ControlPanel(inControlPanelNameStr="TestTTT",inRefreshHTMLJinja2TemplatePathStr="ControlPanel\\test.html", inJinja2TemplateRefreshBool = True)
.. automodule:: pyOpenRPA.Orchestrator.Managers.ControlPanel
:members:
:autosummary:
**************************************************
ControlPanel (Details)
**************************************************
.. automodule:: pyOpenRPA.Orchestrator.Managers.ControlPanel
:members:
:autosummary:

@ -1,30 +1,45 @@
.. _module.robot.description: .. _module.robot.description:
************************ ####################################
1. Описание 1. Описание
************************ ####################################
******************************
Общее
******************************
Модуль обеспечивает всю необходимую функциональность для создания любого программного робота RPA. Модуль робота поставляется в качестве библиотеки Python, что позволяет с легкостью интегрировать его в другие проекты перспективных технологий. Модуль обеспечивает всю необходимую функциональность для создания любого программного робота RPA. Модуль робота поставляется в качестве библиотеки Python, что позволяет с легкостью интегрировать его в другие проекты перспективных технологий.
**Содержит** **Содержит**
- Уровень доступа к элементам локального приложения (win32, UI automation), и веб приложения - **Уровень доступа к элементам локального приложения (win32, UI automation), и веб приложения**
- UIDesktop: инструменты взаимодействия с элементами локального приложения (взаимодействие с ОС через протоколы win32, UI automation). Перейти к описанию функций: :ref:`module.robot.uidesktop` - UIDesktop: инструменты взаимодействия с элементами локального приложения (взаимодействие с ОС через протоколы win32, UI automation). Перейти к описанию функций: :ref:`module.robot.uidesktop`
- UIWeb: инструменты взаимодействия с элементами веб приложения. Перейти к описанию функций: :ref:`module.robot.uiweb` - UIWeb: инструменты взаимодействия с элементами веб приложения. Перейти к описанию функций: :ref:`module.robot.uiweb`
- Уровень доступа к текстовым каналам передачи данных (клавиатура, буфер обмена) - **Уровень доступа к текстовым каналам передачи данных (клавиатура, буфер обмена)**
- Keyboard: инструменты взаимодействия с клавиатурой. Перейти к описанию функций: :ref:`module.robot.keyboard` - Keyboard: инструменты взаимодействия с клавиатурой. Перейти к описанию функций: :ref:`module.robot.keyboard`
- Clipboard: инструменты взаимодействия с буфером обмена. Перейти к описанию функций: :ref:`module.robot.clipboard` - Clipboard: инструменты взаимодействия с буфером обмена. Перейти к описанию функций: :ref:`module.robot.clipboard`
- Уровень доступа к графическим каналам передачи данных (мышь, экран) - **Уровень доступа к графическим каналам передачи данных (мышь, экран)**
- Mouse: инструменты взаимодействия с мышью. Перейти к описанию функций: :ref:`module.robot.mouse` - Mouse: инструменты взаимодействия с мышью. Перейти к описанию функций: :ref:`module.robot.mouse`
- Image: инструменты взаимодействия с эраном рабочего стола. Перейти к описанию функций: :ref:`module.robot.image` - Image: инструменты взаимодействия с эраном рабочего стола. Перейти к описанию функций: :ref:`module.robot.image`
Ниже преставлен пример использования инструментов робота. Дорогие коллеги!
Мы знаем, что с pyOpenRPA вы сможете существенно улучшить качество вашего бизнеса. Платформа роботизации pyOpenRPA - это разработка, которая дает возможность делать виртуальных сотрудников (программных роботов RPA) выгодными, начиная от эффекта всего в **10 тыс. руб.** И управлять ими будете только Вы!
Если у вас останутся вопросы, то вы всегда можете обратиться в центр поддержки клиентов pyOpenRPA. Контакты: :ref:`3.-Copyrights-&-Contacts`
pyOpenRPA - роботы помогут!
******************************
Примеры
******************************
**Ниже преставлен пример использования инструментов робота.**
.. code-block:: python .. code-block:: python
@ -110,4 +125,15 @@
Mouse.mouseDown(x-30,y+90) Mouse.mouseDown(x-30,y+90)
Mouse.moveTo(x+40,y+130) Mouse.moveTo(x+40,y+130)
Mouse.moveTo(x+105,y+90) Mouse.moveTo(x+105,y+90)
Mouse.mouseUp() Mouse.mouseUp()
******************************
Быстрая навигация
******************************
- `Сообщество pyOpenRPA (telegram) <https://t.me/pyOpenRPA>`_
- `Сообщество pyOpenRPA (tenchat) <https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24>`_
- `Сообщество pyOpenRPA (вконтакте) <https://vk.com/pyopenrpa>`_
- `Презентация pyOpenRPA <https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf>`_
- `Портал pyOpenRPA <https://pyopenrpa.ru>`_
- `Репозиторий pyOpenRPA <https://gitlab.com/UnicodeLabs/OpenRPA>`_

@ -1,276 +1,185 @@
.. _module.robot.uidesktop: .. _module.robot.uidesktop:
#################################### ####################################
2. UIDesktop 2. Функции UIDesktop
#################################### ####################################
************************ ************************
Общее Общее
************************ ************************
Здесь представлено описание всех функций, которые используются для взаимодействия с UI интерфейсами локальных приложений.
Here you can find the functions description for interaction with desktop GUI applications **Функции в модуле UIDesktop именуются по следующему принципу:**
<Входящий аргумент>_<действие>_<исходящий аргумент - если присутствует>
**Термины и определения:**
************************ - **UIO:** Объект пользовательского интерфейса
UIO объект - **UIOSelector:** Селектор (адрес) одного и/или более UIO объектов. Селектор представлен в формате списка (list) словарей (dict) атрибутивных критериев.
************************
************************
UIO селектор
************************
************************************************ **************************************************
UIO свойства и методы (общие) Описание функций
************************************************ **************************************************
- process_id()
Return the ID of process that owns this window
- window_text() .. automodule:: pyOpenRPA.Robot.UIDesktop
Window text of the element :members:
Quite a few contorls have other text that is visible, for example Edit controls usually have an empty string for window_text but still have text displayed in the edit window. :autosummary:
- windowclasses= []
- writable_props
Build the list of the default properties to be written.
Derived classes may override or extend this list depending on how much control they need.
- rectangle()
Return the rectangle of element: {"top", "left", "right", "bottom"}
The rectangle() is the rectangle of the element on the screen. Coordinates are given from the top left of the screen.
This method returns a RECT structure, Which has attributes - top, left, right, bottom. and has methods width() and height(). See win32structures.RECT for more information.
- right_click_input(coords=(None, None)) ************************
Right click at the specified coords Селектор UIO
************************
- click_input(button='left', coords=(None, None), button_down=True, button_up=True, double=False, wheel_dist=0, use_log=True, pressed='', absolute=False, key_down=True, key_up=True) Селектор UIO - адрес одного и/или более UIO объектов. Селектор представлен в формате списка (list) словарей (dict) атрибутивных критериев. Поддерживает формат JSON, что позволяет обеспечить удобство форматирования и передачи через web интерфейс студии / оркестратора.
Click at the specified coordinates
button The mouse button to click. One of left, right, middle or x (Default: left, move is a special case) UIO селектор — это список характеристических словарей (спецификаций UIO). Данные спецификации UIO содержат условия, с помощью которых библиотека pyOpenRPA определит UIO, удовлетворяющий условиям, заданным в спецификации UIO. Индекс спецификации UIO в списке UIO селектора харакетризует уровень вложенности целевого UIO. Говоря другим языком, UIO селектор — это перечень условий, под которые может попасть 0, 1 или n UIO.
coords The coordinates to click at.(Default: the center of the control)
double Whether to perform a double click or not (Default: False) Ниже приведен перечень атрибутов — условий, которые можно использовать в спецификациях UIO:
wheel_dist The distance to move the mouse wheel (default: 0)
NOTES: **Формат селектора:**
This is different from click method in that it requires the control to be visible on the screen but performs a more realistic click simulation.
This method is also vulnerable if the mouse is moved by the user as that could easily move the mouse off the control before the click_input has finished. [
{
- double_click_input(button='left', coords=(None, None))
Double click at the specified coordinates "depth_start" :: [int, начинается с 1] :: глубина, с которой начинается поиск (по умолчанию 1),
- press_mouse_input(button='left', coords=(None, None), pressed='', absolute=True, key_down=True, key_up=True) "depth_end" :: [int, начинается с 1] :: глубина, до которой ведется поиск (по умолчанию 1),
Press a mouse button using SendInput
"ctrl_index" || "index" :: [int, начинается с 0] :: индекс UIO в списке у родительского UIO,
- press_mouse_input(button='left', coords=(None, None), pressed='', absolute=True, key_down=True, key_up=True)
Press a mouse button using SendInput "title" :: [str] :: идентичное наименование атрибута *title* искомого объекта UIO,
- drag_mouse_input(dst=(0, 0), src=None, button='left', pressed='', absolute=True) "title_re" :: [str] :: регулярное выражение (python диалект) для отбора UIO, у которого атрибут *title* должен удовлетворять условию данного регулярного выражения,
Click on src, drag it and drop on dst
dst is a destination wrapper object or just coordinates. "rich_text" :: [str] :: идентичное наименование атрибута *rich_text* искомого объекта UIO,
src is a source wrapper object or coordinates. If src is None the self is used as a source object.
button is a mouse button to hold during the drag. It can be “left”, “right”, “middle” or “x” "rich_text_re" :: [str] :: регулярное выражение (python диалект) для отбора UIO, у которого атрибут *rich_text* должен удовлетворять условию данного регулярного выражения,
pressed is a key on the keyboard to press during the drag.
absolute specifies whether to use absolute coordinates for the mouse pointer locations "class_name" :: [str] :: идентичное наименование атрибута *class_name* искомого объекта UIO,
- wheel_mouse_input(coords=(None, None), wheel_dist=1, pressed='') "class_name_re" :: [str] :: регулярное выражение (python диалект) для отбора UIO, у которого атрибут *class_name* должен удовлетворять условию данного регулярного выражения,
Do mouse wheel
"friendly_class_name" :: [str] :: идентичное наименование атрибута *friendly_class_name* искомого объекта UIO,
- draw_outline(colour='green', thickness=2, fill=<MagicMock name='mock.win32defines.BS_NULL' id='140124673757368'>, rect=None)
Draw an outline around the window. "friendly_class_name_re" :: [str] :: регулярное выражение (python диалект) для отбора UIO, у которого атрибут *friendly_class_name* должен удовлетворять условию данного регулярного выражения,
colour can be either an integer or one of red, green, blue (default green)
thickness thickness of rectangle (default 2) "control_type" :: [str] :: идентичное наименование атрибута *control_type* искомого объекта UIO,
fill how to fill in the rectangle (default BS_NULL)
rect the coordinates of the rectangle to draw (defaults to the rectangle of the control) "control_type_re" :: [str] :: регулярное выражение (python диалект) для отбора UIO, у которого атрибут *control_type* должен удовлетворять условию данного регулярного выражения,
- element_info "is_enabled" :: [bool] :: признак, что UIO доступен для выполнения действий,
Read-only property to get ElementInfo object
"is_visible" :: [bool] :: признак, что UIO отображается на экране,
- from_point(x, y)
Get wrapper object for element at specified screen coordinates (x, y) "backend" :: [str, "win32" || "uia"] :: вид способа адресации к UIO (по умолчанию "win32"). Внимание! Данный атрибут может быть указан только для первого элемента списка UIO селектора. Для остальных элементов списка данный атрибут будет проигнорирован.
- get_properties() },
Return the properties of the control as a dictionary. { ... спецификация UIO следующего уровня иерархии }
]
- is_child(parent)
Return True if this element is a child of parent. **Пример UIO селектора:**
An element is a child of another element when it is a direct of the other element. An element is a direct descendant of a given element if the parent element is the the chain of parent elements for the child element. [
{"class_name":"CalcFrame", "backend":"win32"}, # Спецификация UIO 1-го уровня вложенности
- is_dialog() {"title":"Hex", "depth_start":3, "depth_end": 3} # Спецификация UIO 1+3-го уровня вложенности (так как установлены атрибуты depth_start|depth_stop, определяющие глубину поиска UIO)
Return True if the control is a top level window ]
- is_enabled()
Whether the element is enabled or not **UIO объект - свойства и методы (общие)**
Checks that both the top level parent (probably dialog) that owns this element and the element itself are both enabled.
If you want to wait for an element to become enabled (or wait for it to become disabled) use Application.wait('visible') or Application.wait_not('visible'). - process_id(): Возвращает идентификатор процесса, которому принадлежит это окно
If you want to raise an exception immediately if an element is not enabled then you can use the BaseWrapper.verify_enabled(). BaseWrapper.VerifyReady() raises if the window is not both visible and enabled. - window_text(): Текст окна элемента. Довольно много элементов управления имеют другой текст, который виден, например, элементы управления редактированием обычно имеют пустую строку для window_text, но все равно имеют текст, отображаемый в окне редактирования.
- rectangle(): Возвращает прямоугольник элемента: {"сверху", "слева", "справа", "снизу"} Прямоугольник() - это прямоугольник элемента на экране. Координаты указаны в левом верхнем углу экрана. Этот метод возвращает прямоугольную структуру, которая имеет атрибуты - top, left, right, bottom. и имеет методы width() и height(). См. раздел win32structures.Прямую кишку для получения дополнительной информации.
- right_click_input(coords=(None, None)): Щелкните правой кнопкой мыши на указанных координатах
- is_visible() - click_input(button='left', coords=(None, None), button_down=True, button_up=True, double=False, wheel_dist=0, use_log=True, pressed='', absolute=False, key_down=True, key_up=True): Щелкните по указанным координатам кнопкой мыши, чтобы щелкнуть. Один из "влево", "вправо", "посередине" или "x" (по умолчанию: "влево", "переместить" - это особый случай) определяет координаты, по которым нужно щелкнуть.(По умолчанию: центр элемента управления) дважды Укажите, следует ли выполнять двойной щелчок или нет (по умолчанию: False) wheel_dist Расстояние для перемещения колеса мыши (по умолчанию: 0) Внимание: Этот метод отличается от метода щелчка тем, что он требует, чтобы элемент управления был виден на экране, но выполняет более реалистичную симуляцию щелчка. Этот метод также уязвим, если пользователь перемещает мышь, поскольку это может легко переместить мышь с элемента управления до завершения click_input.
Whether the element is visible or not - double_click_input(button='left', coords=(None, None)): Дважды щелкните по указанным координатам
Checks that both the top level parent (probably dialog) that owns this element and the element itself are both visible. - press_mouse_input(button='left', coords=(None, None), pressed='', absolute=True, key_down=True, key_up=True): Нажмите кнопку мыши с помощью SendInput
If you want to wait for an element to become visible (or wait for it to become hidden) use Application.wait('visible') or Application.wait_not('visible'). - drag_mouse_input(dst=(0, 0), src=None, button='left', pressed='', absolute=True): Нажмите на src, перетащите его и перетащите на dst dst - это объект-оболочка назначения или просто координаты. src - это исходный объект-оболочка или координаты. Если src равен None, self используется в качестве исходного объекта. кнопка - это кнопка мыши, которую нужно удерживать во время перетаскивания. Это может быть “влево”, “вправо”, “посередине” или “x”. Нажата клавиша на клавиатуре, которую нужно нажимать во время перетаскивания. абсолютные указывает, следует ли использовать абсолютные координаты для расположения указателя мыши
If you want to raise an exception immediately if an element is not visible then you can use the BaseWrapper.verify_visible(). BaseWrapper.verify_actionable() raises if the element is not both visible and enabled. - wheel_mouse_input(coords=(None, None), wheel_dist=1, pressed=''): Прокрутить колесо мыши
- draw_outline(colour='green', thickness=2, fill=<MagicMock name='mock.win32defines.BS_NULL' id='140124673757368'>, rect=None): Нарисуйте контур вокруг окна. цвет может быть либо целым числом, либо одним из "красного", "зеленого", "синего" (по умолчанию "зеленый") толщина толщина прямоугольника (по умолчанию 2) заливка как заполнить прямоугольник (по умолчанию BS_NULL) укажите координаты прямоугольника для рисования (по умолчанию используется прямоугольник элемента управления)
- parent() - element_info: Свойство, доступное только для чтения, для получения объекта ElementInfo
Return the parent of this element - from_point(x, y): Получить объект-оболочку для элемента в заданных координатах экрана (x, y)
Note that the parent of a control is not necesarily a dialog or other main window. A group box may be the parent of some radio buttons for example. - get_properties(): Возвращает свойства элемента управления в виде словаря.
To get the main (or top level) window then use BaseWrapper.top_level_parent(). - is_child(parent): Возвращает значение True, если этот элемент является дочерним элементом parent. Элемент является дочерним элементом другого элемента, когда он является прямым элементом другого элемента. Элемент является прямым потомком данного элемента, если родительский элемент является цепочкой родительских элементов для дочернего элемента.
- is_dialog(): Возвращает значение True, если элемент управления является окном верхнего уровня
- root() - is_enabled(): Независимо от того, включен элемент или нет. Проверяет, что как родительский элемент верхнего уровня (возможно, диалоговое окно), которому принадлежит этот элемент, так и сам элемент включены.Если вы хотите дождаться, пока элемент станет включенным (или дождаться, пока он станет отключенным), используйте Application.wait('visible') или Application.wait_not('visible').Если вы хотите немедленно вызвать исключение, если элемент не включен, вы можете использовать BaseWrapper.verify_enabled(). Функция BaseWrapper.Verify Ready() вызывается, если окно одновременно не видно и не включено.
Return wrapper for root element (desktop) - is_visible(): Является ли элемент видимым или нет. Проверяет, видны ли как родительский элемент верхнего уровня (возможно, диалоговое окно), которому принадлежит этот элемент, так и сам элемент. Если вы хотите дождаться, пока элемент станет видимым (или дождаться, пока он станет скрытым), используйте Application.wait('visible') или Application.wait_not('visible'). Если вы хотите немедленно вызвать исключение, если элемент не виден, вы можете использовать BaseWrapper.verify_visible(). Базовая оболочка.verify_actible() вызывается, если элемент одновременно не виден и не включен.
- parent(): Возвращает родительский элемент этого элемента Обратите внимание, что родительским элементом элемента управления не обязательно является диалоговое окно или другое главное окно. Например, поле группы может быть родительским для некоторых переключателей. Чтобы получить главное (или окно верхнего уровня), затем используйте BaseWrapper.top_level_parent().
- set_focus() - root(): Возвращаемая оболочка для корневого элемента (рабочий стол)
Set the focus to this element - set_focus(): Установить фокус на этот элемент
- texts(): Возвращает текст для каждого элемента этого элемента управления Это список строк для элемента управления. Часто переопределяется извлечение всех строк из элемента управления с несколькими элементами. Это всегда список с одной или несколькими строками: Первый элемент - это текст окна элемента управления Последующие элементы содержат текст любых элементов элемента управления (например, элементы в listbox/combobox, вкладки в tabcontrol)
- texts() - type_keys(keys, pause=None, with_spaces=False, with_tabs=False, with_newlines=False, turn_off_numlock=True, set_foreground=True, vk_packet=True): Введите ключи для элемента с помощью клавиатуры.send_keys. Ограниченная функциональность. Для более полной функциональности рекомендуем ознакомится с pyOpenPRA.Robot.Keyboard
Return the text for each item of this control - was_maximized(): Проверить, было ли окно развернуто перед сворачиванием или нет
It is a list of strings for the control. It is frequently overridden to extract all strings from a control with multiple items.
It is always a list with one or more strings: **UIO свойства и методы (дополнение к базовым методам для win32 элементов)**
The first element is the window text of the control
Subsequent elements contain the text of any items of the control (e.g. items in a listbox/combobox, tabs in a tabcontrol) **Кнопка (Button || CheckBox || RadioButton || GroupBox)**
- type_keys(keys, pause=None, with_spaces=False, with_tabs=False, with_newlines=False, turn_off_numlock=True, set_foreground=True, vk_packet=True) - check(): Установить флажок
Type keys to the element using keyboard.send_keys - uncheck(): Снять флажок
Ограниченная функциональность. Для более полной функциональности рекомендуем ознакомится с pyOpenPRA.Robot.Keyboard - get_check_state(): Вернуть состояние проверки флажка. Состояние проверки представлено целым числом 0 - непроверено 1 - проверено 2 - неопределенно. Следующие константы определены в модуле win32defines BST_UNCHECKED = 0 BST_CHECKED = 1 BST_INDETERMINATE = 2
This uses the re-written keyboard python module where you can find documentation on what to use for the keys. - click(button='left', pressed='', coords=(0, 0), double=False, absolute=False): Клик на кнопку управления
- is_checked(): Возвращает True, если флажок установлен, False, если флажок не установлен, None, если значение не определено
- was_maximized() - is_dialog(): Кнопки никогда не являются диалоговыми окнами, поэтому возвращайте значение False
Indicate whether the window was maximized before minimizing or not - set_check_indeterminate(): Установить флажок в положение неопределенный
- friendly_class_name(): Возвращает имя класса кнопки. Они могут выглядеть следующим образом: Кнопки, этот метод возвращает “Button”; Флажки, этот метод возвращает “флажок”; RadioButtons, этот метод возвращает “RadioButton”; GroupBoxes, этот метод возвращает “GroupBox”
*************************************************************
UIO свойства и методы (дополнение для win32 элементов) **Поле выбора нескольких значений из списка (ComboBox)**
*************************************************************
Кнопка (Button || CheckBox || RadioButton || GroupBox) - friendlyclassname = 'ComboBox'
- windowclasses = ['ComboBox', 'WindowsForms\\d*\\.COMBOBOX\\..*', '.*ComboBox']
- check() - dropped_rect(): Получить выпадающий прямоугольник в поле со списком
Check a checkbox - get_properties(): Возвращает свойства элемента управления в виде словаря
- item_count(): Возвращает количество элементов в поле со списком
- get_check_state() - item_data(item): Возвращает данные элемента, связанные с элементом, если таковые имеются
Return the check state of the checkbox - item_texts(): Возвращает текст элементов выпадающего списка
The check state is represented by an integer 0 - unchecked 1 - checked 2 - indeterminate - select(item): Выбрать элемент со списком элемент может быть либо индексом элемента для выбора на основе 0, либо строкой, которую вы хотите выбрать
The following constants are defined in the win32defines module BST_UNCHECKED = 0 BST_CHECKED = 1 BST_INDETERMINATE = 2 - selected_index(): Возвращает выбранный индекс
- selected_text():Возвращает выделенный текст
- click(button='left', pressed='', coords=(0, 0), double=False, absolute=False) - texts(): Возвращает текст элементов в выпадающем списке
Click the Button control
- is_checked() **Поле ввода (Edit)**
Return True if checked, False if not checked, None if indeterminate
- is_dialog() - friendlyclassname = 'Edit'
Buttons are never dialogs so return False - windowclasses = ['Edit', '.*Edit', 'TMemo', 'WindowsForms\\d*\\.EDIT\\..*', 'ThunderTextBox', 'ThunderRT6TextBox']
- set_check_indeterminate() - get_line(line_index): Возвращает указанную строку
Set the checkbox to indeterminate - line_count(): Возвращает, сколько строк есть в редактировании
- uncheck() - line_length(line_index): Возвращает количество символов в строке
Uncheck a checkbox - select(start=0, end=None): Установите выбор редактирования элемента управления редактированием
- friendly_class_name() - selection_indices(): Начальный и конечный индексы текущего выбора
Return the friendly class name of the button - set_edit_text(text, pos_start=None, pos_end=None): Задать текст элемента управления редактированием
- set_text(text, pos_start=None, pos_end=None): Задать текст элемента управления редактированием
Windows controls with the class “Button” can look like different controls based on their style. They can look like the following controls: - set_window_text(text, append=False): Переопределите set_window_text для элементов управления редактированием, поскольку он не должен использоваться для элементов управления редактированием. Элементы управления редактированием должны использовать либо set_edit_text(), либо type_keys() для изменения содержимого элемента управления редактированием.
- text_block(): Получить текст элемента управления редактированием
Buttons, this method returns “Button” - texts(): Получить текст элемента управления редактированием
CheckBoxes, this method returns “CheckBox”
RadioButtons, this method returns “RadioButton” **Поле выбора 1-го значения из списка (ListBox)**
GroupBoxes, this method returns “GroupBox”
- friendlyclassname = 'ListBox'
- windowclasses = ['ListBox', 'WindowsForms\\d*\\.LISTBOX\\..*', '.*ListBox']
Поле выбора нескольких значений из списка (ComboBox) - get_item_focus(): Возвращает индекс текущего выбора в списке
- is_single_selection(): Проверить, имеет ли поле списка режим одиночного выбора
- dropped_rect() - item_count(): Возвращает количество элементов в списке
Get the dropped rectangle of the combobox - item_data(i): Возвращает item_data, если таковые имеются, связанные с элементом
- friendlyclassname= 'ComboBox' - item_texts(): Возвращает текст элементов списка
- get_properties() - select(item, select=True): Выбрать элемент списка элемент может быть либо индексом элемента для выбора на основе 0, либо строкой, которую вы хотите выбрать
Return the properties of the control as a dictionary - selected_indices(): Выбранные в данный момент индексы списка
item_count() - set_item_focus(item): Установить фокус по элементу
Return the number of items in the combobox - texts(): Получить текст элемента управления редактированием
- item_data(item)
Returns the item data associated with the item if any **Выпадающее меню (PopupMenu)**
- item_texts()
Return the text of the items of the combobox - friendlyclassname = 'PopupMenu'
- select(item) - windowclasses = ['#32768']
Select the ComboBox item - is_dialog(): Возвращает, является ли это диалогом
item can be either a 0 based index of the item to select or it can be the string that you want to select
- selected_index() **Текст (Static)**
Return the selected index
- selected_text()
Return the selected text
- texts()
Return the text of the items in the combobox
- windowclasses= ['ComboBox', 'WindowsForms\\d*\\.COMBOBOX\\..*', '.*ComboBox']
Поле ввода (Edit)
- friendlyclassname= 'Edit'
- get_line(line_index)
Return the line specified
- line_count()
Return how many lines there are in the Edit
- line_length(line_index)
Return how many characters there are in the line
- select(start=0, end=None)
Set the edit selection of the edit control
- selection_indices()
The start and end indices of the current selection
- set_edit_text(text, pos_start=None, pos_end=None)
Set the text of the edit control
- set_text(text, pos_start=None, pos_end=None)
Set the text of the edit control
- set_window_text(text, append=False)
Override set_window_text for edit controls because it should not be used for Edit controls.
Edit Controls should either use set_edit_text() or type_keys() to modify the contents of the edit control.
- text_block()
Get the text of the edit control
- texts()
Get the text of the edit control
- windowclasses= ['Edit', '.*Edit', 'TMemo', 'WindowsForms\\d*\\.EDIT\\..*', 'ThunderTextBox', 'ThunderRT6TextBox']
Поле выбора 1-го значения из списка (ListBox)
- friendlyclassname= 'ListBox'
- get_item_focus()
Return the index of current selection in a ListBox
- is_single_selection()
Check whether the listbox has single selection mode.
- item_count()
Return the number of items in the ListBox
- item_data(i)
Return the item_data if any associted with the item
- item_rect(item)
Return the rect of the item
- item_texts()
Return the text of the items of the listbox
- select(item, select=True)
Select the ListBox item
item can be either a 0 based index of the item to select or it can be the string that you want to select
- selected_indices()
The currently selected indices of the listbox
- set_item_focus(item)
Set the ListBox focus to the item at index
- texts()
Return the texts of the control
- windowclasses= ['ListBox', 'WindowsForms\\d*\\.LISTBOX\\..*', '.*ListBox']
Выпадающее меню (PopupMenu)
- friendlyclassname= 'PopupMenu'
- is_dialog()
Return whether it is a dialog
- windowclasses= ['#32768']
Текст (Static)
- friendlyclassname= 'Static' - friendlyclassname= 'Static'
- windowclasses= ['Static', 'WindowsForms\\d*\\.STATIC\\..*', 'TPanel', '.*StaticText'] - windowclasses= ['Static', 'WindowsForms\\d*\\.STATIC\\..*', 'TPanel', '.*StaticText']
*************************************************************
UIO свойства и методы (дополнение для uia элементов)
*************************************************************
**Инициализация 2-х разрядностей для UIO**
************************************************
Инициализация 2-х разрядностей для UIO
************************************************
pyOpenRPA позволяет обеспечить максимальную совместимость со всеми приложениями, которые выполняются на компьютере. Мы рекомендуем разрабатывать робота под интерпретатором Python x64. В дополнение к нему Вы можете подключить Python x32 (см. ниже пример подключения). Если планируемый робот не будет взаимодействовать через pyOpenRPA.Robot.UIDesktop с другой разрядность, то эту настройку можно не применять. pyOpenRPA позволяет обеспечить максимальную совместимость со всеми приложениями, которые выполняются на компьютере. Мы рекомендуем разрабатывать робота под интерпретатором Python x64. В дополнение к нему Вы можете подключить Python x32 (см. ниже пример подключения). Если планируемый робот не будет взаимодействовать через pyOpenRPA.Robot.UIDesktop с другой разрядность, то эту настройку можно не применять.
@ -289,16 +198,13 @@ pyOpenRPA позволяет обеспечить максимальную со
# Теперь при вызове функций pyOpenRPA.Robot.UIDesktop платформа pyOpenRPA будет отслеживать разрядность приложения и отправлять соответсвующий вызов на идентичную разрядность. # Теперь при вызове функций pyOpenRPA.Robot.UIDesktop платформа pyOpenRPA будет отслеживать разрядность приложения и отправлять соответсвующий вызов на идентичную разрядность.
.. automodule:: pyOpenRPA.Robot.UIDesktop ******************************
:members: Быстрая навигация
:autosummary: ******************************
**********
Ссылки
**********
`reStructuredText`_
.. target-notes:: - `Сообщество pyOpenRPA (telegram) <https://t.me/pyOpenRPA>`_
.. _`reStructuredText`: http://docutils.sourceforge.net/rst.html - `Сообщество pyOpenRPA (tenchat) <https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24>`_
- `Сообщество pyOpenRPA (вконтакте) <https://vk.com/pyopenrpa>`_
- `Презентация pyOpenRPA <https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf>`_
- `Портал pyOpenRPA <https://pyopenrpa.ru>`_
- `Репозиторий pyOpenRPA <https://gitlab.com/UnicodeLabs/OpenRPA>`_

@ -1,38 +1,31 @@
.. _module.robot.uiweb: .. _module.robot.uiweb:
#################################### ####################################
3. UIWeb 3. Функции UIWeb
#################################### ####################################
Here you can find the functions description for interaction with desktop GUI applications ************************
Общее
************************
How to use both x32 and x64 python processes (it can be helpfully, if another app GUI is on another bitness than your app) Документация к модулю будет опубликована в Июле 2022. По всем вопросам роботизации WEB приложений обращайтесь в центр поддержки клиентов pyOpenRPA.
.. code-block:: python
from pyOpenRPA.Robot import UIDesktop Дорогие коллеги!
#Section for robot init
lPyOpenRPA_SettingsDict = {
"Python32FullPath": "..\\Resources\\WPy32-3720\\python-3.7.2\\python.exe", #Set from user: "..\\Resources\\WPy32-3720\\python-3.7.2\\OpenRPARobotGUIx32.exe"
"Python64FullPath": "..\\Resources\\WPy64-3720\\python-3.7.2.amd64\\python.exe", #Set from user
"Python32ProcessName": "pyOpenRPA_UIDesktopX32.exe", #Config set once
"Python64ProcessName": "pyOpenRPA_UIDesktopX64.exe" #Config set once
}
# Init the pyOpenRPA configuration
UIDesktop.Utils.ProcessBitness.SettingsInit(lPyOpenRPA_SettingsDict)
# Now you can use pyOpenRPA with both bitness.
Мы знаем, что с pyOpenRPA вы сможете существенно улучшить качество вашего бизнеса. Платформа роботизации pyOpenRPA - это разработка, которая дает возможность делать виртуальных сотрудников (программных роботов RPA) выгодными, начиная от эффекта всего в **10 тыс. руб.** И управлять ими будете только Вы!
.. automodule:: pyOpenRPA.Robot.UIDesktop Если у вас останутся вопросы, то вы всегда можете обратиться в центр поддержки клиентов pyOpenRPA. Контакты: :ref:`3.-Copyrights-&-Contacts`
:members:
:autosummary:
pyOpenRPA - роботы помогут!
********** ******************************
References Быстрая навигация
********** ******************************
`reStructuredText`_ - `Сообщество pyOpenRPA (telegram) <https://t.me/pyOpenRPA>`_
- `Сообщество pyOpenRPA (tenchat) <https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24>`_
.. target-notes:: - `Сообщество pyOpenRPA (вконтакте) <https://vk.com/pyopenrpa>`_
.. _`reStructuredText`: http://docutils.sourceforge.net/rst.html - `Презентация pyOpenRPA <https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf>`_
- `Портал pyOpenRPA <https://pyopenrpa.ru>`_
- `Репозиторий pyOpenRPA <https://gitlab.com/UnicodeLabs/OpenRPA>`_

@ -1,9 +1,13 @@
.. _module.robot.keyboard: .. _module.robot.keyboard:
#################################### ####################################
4. Keyboard 4. Функции Keyboard
#################################### ####################################
************************
Общее
************************
Клавиатура - это главный текстовый инструмент, который обладает 100% точностью передачи данных. С его помощью можно отправлять сообщения, ожидать нажатия и выполнять различные комбинации клавиш. На этой странице представлена вся необходимая информация по управлению клавиатурой со стороны программного робота RPA. Клавиатура - это главный текстовый инструмент, который обладает 100% точностью передачи данных. С его помощью можно отправлять сообщения, ожидать нажатия и выполнять различные комбинации клавиш. На этой странице представлена вся необходимая информация по управлению клавиатурой со стороны программного робота RPA.
В отличие от многих RPA платформ, pyOpenRPA обладает функциями, которые не зависят от текущей раскладки клавиатуры. За счет этого надежность и стабильность программного робота существенно возрастает. В отличие от многих RPA платформ, pyOpenRPA обладает функциями, которые не зависят от текущей раскладки клавиатуры. За счет этого надежность и стабильность программного робота существенно возрастает.
@ -29,7 +33,7 @@
Коды клавиш см. ниже Коды клавиш см. ниже
************************************************** **************************************************
Описание методов Описание функций
************************************************** **************************************************
@ -215,3 +219,15 @@
# Пример использования функции send # Пример использования функции send
from pyOpenRPA.Robot import Keyboard from pyOpenRPA.Robot import Keyboard
Keyboard.send(57) Keyboard.send(57)
******************************
Быстрая навигация
******************************
- `Сообщество pyOpenRPA (telegram) <https://t.me/pyOpenRPA>`_
- `Сообщество pyOpenRPA (tenchat) <https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24>`_
- `Сообщество pyOpenRPA (вконтакте) <https://vk.com/pyopenrpa>`_
- `Презентация pyOpenRPA <https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf>`_
- `Портал pyOpenRPA <https://pyopenrpa.ru>`_
- `Репозиторий pyOpenRPA <https://gitlab.com/UnicodeLabs/OpenRPA>`_

@ -1,38 +1,24 @@
.. _module.robot.clipboard: .. _module.robot.clipboard:
#################################### ####################################
5. Clipboard 5. Функции Clipboard
#################################### ####################################
Here you can find the functions description for interaction with desktop GUI applications **************************************************
Описание функций
**************************************************
How to use both x32 and x64 python processes (it can be helpfully, if another app GUI is on another bitness than your app) .. automodule:: pyOpenRPA.Robot.Clipboard
.. code-block:: python
from pyOpenRPA.Robot import UIDesktop
#Section for robot init
lPyOpenRPA_SettingsDict = {
"Python32FullPath": "..\\Resources\\WPy32-3720\\python-3.7.2\\python.exe", #Set from user: "..\\Resources\\WPy32-3720\\python-3.7.2\\OpenRPARobotGUIx32.exe"
"Python64FullPath": "..\\Resources\\WPy64-3720\\python-3.7.2.amd64\\python.exe", #Set from user
"Python32ProcessName": "pyOpenRPA_UIDesktopX32.exe", #Config set once
"Python64ProcessName": "pyOpenRPA_UIDesktopX64.exe" #Config set once
}
# Init the pyOpenRPA configuration
UIDesktop.Utils.ProcessBitness.SettingsInit(lPyOpenRPA_SettingsDict)
# Now you can use pyOpenRPA with both bitness.
.. automodule:: pyOpenRPA.Robot.UIDesktop
:members: :members:
:autosummary: :autosummary:
******************************
Быстрая навигация
******************************
********** - `Сообщество pyOpenRPA (telegram) <https://t.me/pyOpenRPA>`_
References - `Сообщество pyOpenRPA (tenchat) <https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24>`_
********** - `Сообщество pyOpenRPA (вконтакте) <https://vk.com/pyopenrpa>`_
- `Презентация pyOpenRPA <https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf>`_
`reStructuredText`_ - `Портал pyOpenRPA <https://pyopenrpa.ru>`_
- `Репозиторий pyOpenRPA <https://gitlab.com/UnicodeLabs/OpenRPA>`_
.. target-notes::
.. _`reStructuredText`: http://docutils.sourceforge.net/rst.html

@ -1,38 +1,29 @@
.. _module.robot.mouse: .. _module.robot.mouse:
#################################### ####################################
6. Mouse 6. Функции Mouse
#################################### ####################################
Here you can find the functions description for interaction with desktop GUI applications **************************************************
Общее
How to use both x32 and x64 python processes (it can be helpfully, if another app GUI is on another bitness than your app) **************************************************
.. code-block:: python
from pyOpenRPA.Robot import UIDesktop
#Section for robot init
lPyOpenRPA_SettingsDict = {
"Python32FullPath": "..\\Resources\\WPy32-3720\\python-3.7.2\\python.exe", #Set from user: "..\\Resources\\WPy32-3720\\python-3.7.2\\OpenRPARobotGUIx32.exe"
"Python64FullPath": "..\\Resources\\WPy64-3720\\python-3.7.2.amd64\\python.exe", #Set from user
"Python32ProcessName": "pyOpenRPA_UIDesktopX32.exe", #Config set once
"Python64ProcessName": "pyOpenRPA_UIDesktopX64.exe" #Config set once
}
# Init the pyOpenRPA configuration
UIDesktop.Utils.ProcessBitness.SettingsInit(lPyOpenRPA_SettingsDict)
# Now you can use pyOpenRPA with both bitness.
**************************************************
Описание функций
**************************************************
.. automodule:: pyOpenRPA.Robot.Mouse .. automodule:: pyOpenRPA.Robot.Mouse
:members: :members:
:autosummary: :autosummary:
********** ******************************
References Быстрая навигация
********** ******************************
`reStructuredText`_
.. target-notes:: - `Сообщество pyOpenRPA (telegram) <https://t.me/pyOpenRPA>`_
.. _`reStructuredText`: http://docutils.sourceforge.net/rst.html - `Сообщество pyOpenRPA (tenchat) <https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24>`_
- `Сообщество pyOpenRPA (вконтакте) <https://vk.com/pyopenrpa>`_
- `Презентация pyOpenRPA <https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf>`_
- `Портал pyOpenRPA <https://pyopenrpa.ru>`_
- `Репозиторий pyOpenRPA <https://gitlab.com/UnicodeLabs/OpenRPA>`_

@ -1,38 +1,30 @@
.. _module.robot.image: .. _module.robot.image:
#################################### ####################################
7. Image 7. Функции Image
#################################### ####################################
Here you can find the functions description for interaction with desktop GUI applications ************************
Общее
************************
How to use both x32 and x64 python processes (it can be helpfully, if another app GUI is on another bitness than your app) Документация к модулю будет опубликована в Июле 2022. По всем вопросам роботизации WEB приложений обращайтесь в центр поддержки клиентов pyOpenRPA.
.. code-block:: python Дорогие коллеги!
from pyOpenRPA.Robot import UIDesktop Мы знаем, что с pyOpenRPA вы сможете существенно улучшить качество вашего бизнеса. Платформа роботизации pyOpenRPA - это разработка, которая дает возможность делать виртуальных сотрудников (программных роботов RPA) выгодными, начиная от эффекта всего в **10 тыс. руб.** И управлять ими будете только Вы!
#Section for robot init
lPyOpenRPA_SettingsDict = {
"Python32FullPath": "..\\Resources\\WPy32-3720\\python-3.7.2\\python.exe", #Set from user: "..\\Resources\\WPy32-3720\\python-3.7.2\\OpenRPARobotGUIx32.exe"
"Python64FullPath": "..\\Resources\\WPy64-3720\\python-3.7.2.amd64\\python.exe", #Set from user
"Python32ProcessName": "pyOpenRPA_UIDesktopX32.exe", #Config set once
"Python64ProcessName": "pyOpenRPA_UIDesktopX64.exe" #Config set once
}
# Init the pyOpenRPA configuration
UIDesktop.Utils.ProcessBitness.SettingsInit(lPyOpenRPA_SettingsDict)
# Now you can use pyOpenRPA with both bitness.
Если у вас останутся вопросы, то вы всегда можете обратиться в центр поддержки клиентов pyOpenRPA. Контакты: :ref:`3.-Copyrights-&-Contacts`
.. automodule:: pyOpenRPA.Robot.UIDesktop pyOpenRPA - роботы помогут!
:members:
:autosummary:
******************************
Быстрая навигация
******************************
********** - `Сообщество pyOpenRPA (telegram) <https://t.me/pyOpenRPA>`_
References - `Сообщество pyOpenRPA (tenchat) <https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24>`_
********** - `Сообщество pyOpenRPA (вконтакте) <https://vk.com/pyopenrpa>`_
- `Презентация pyOpenRPA <https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf>`_
`reStructuredText`_ - `Портал pyOpenRPA <https://pyopenrpa.ru>`_
- `Репозиторий pyOpenRPA <https://gitlab.com/UnicodeLabs/OpenRPA>`_
.. target-notes::
.. _`reStructuredText`: http://docutils.sourceforge.net/rst.html

@ -2,225 +2,85 @@
8. Как использовать? 8. Как использовать?
#################################### ####################################
The Robot tool is the main module for production process automation. It has no graphic/console interface. All low-level actions to OS are perfoming by the Robot tool in pyOpenRPA. Модуль РОБОТ - это ключевое звено, которое отвечает за продуктивную роботизацию процесса. Данный модуль не имеет графический или консольный интерфейс - он подключается в качестве библиотеки в проект робота, что позволяет выполнять операции максимально быстро. А также позволяет с легкостью интегрировать робота в другие проекты.
************************************************** **************************************************
How to execute RPA script Как запустить скрипт робота?
************************************************** **************************************************
You can use the robot by the several ways:
- In Python script Запустить скрипт робота можно 2-мя способами:
- In Studio script (n/a)
- Скрипт Python (файл .py)
- Скрипт в Студии pyOpenRPA
Create python script
Скрипт Python (файл .py)
############################################ ############################################
In order to use robot just add Robot tool folder in work directory and add line "import GUI" in your script.
Чтобы начать использовать модуль робота достаточно выполнить в файле скрипта соответсвующие команды импорта:
.. code-block:: python .. code-block:: python
import sys import sys
sys.path.append('../../') sys.path.append('../../')
import selenium # [Web app access](https://gitlab.com/UnicodeLabs/OpenRPA/wikis/05.1.-Theory-&-practice:-Web-app-access-(Chrome,-Firefox,-Opera))<br> from pyOpenRPA.Robot import UIDesktop # Взаимодействие с UI объектами приложений
import GUI # [Win32 & UI Automation access](https://gitlab.com/UnicodeLabs/OpenRPA/wikis/05.2.-Theory-&-practice:-Desktop-app-UI-access-(win32-and-UI-automation-dlls)) <br> from pyOpenRPA.Robot import UIWeb # Взаимодействие с UI объектами веб приложений
import pyautogui #[Screen capture/recognition](https://gitlab.com/UnicodeLabs/OpenRPA/wikis/05.4.-Theory-&-practice:-Screen-capture-&-image-recognition) [#Mouse manipulation](https://gitlab.com/UnicodeLabs/OpenRPA/wikis/05.3.-Theory-&-practice:-Keyboard-&-mouse-manipulation)<br> from pyOpenRPA.Robot import Keyboard # Взаимодействие с клавиатурой
import cv2 # [Computer vision](https://gitlab.com/UnicodeLabs/OpenRPA/wikis/05.4.-Theory-&-practice:-Screen-capture-&-image-recognition)<br> from pyOpenRPA.Robot import Clipboard # Взаимодействие с буфером обмена
import keyboard #[Keyboard manipulation](https://gitlab.com/UnicodeLabs/OpenRPA/wikis/05.3.-Theory-&-practice:-Keyboard-&-mouse-manipulation)<br> from pyOpenRPA.Robot import Mouse # Взаимодействие с мышью
from pyOpenRPA.Robot import Image # Взаимодействие с графической сессией ОС
Execute python script
############################################
The pyOpenRPA is fully portable solution. It contains own python enviroment both 32 and 64 bit versions. So, you can execute your python script in several ways: Описание каждого из этих модулей представлены в разделе "МОДУЛЬ РОБОТ"
- Execute in python x32 (\OpenRPA\Resources\WPy32-3720\python-3.7.2)
- Execute in python x64 (\OpenRPA\Resources\WPy64-3720\python-3.7.2.amd64)
- Execute from .cmd file
Execute in the Python x32 Execute python script
############################################ ############################################
To execute your python script in x32 bit version just write in command line from x32 python directory: pyOpenRPA - это максимально инкапсулированная платформа программной роботизаии RPA. Все необходимые зависимости находятся внутри нее, что позволяет копировать робота между ЭВМ максимально просто.
.. code-block:: python Вы можете запустить скрипт робота RPA следующими способами:
cd "\OpenRPA\Resources\WPy32-3720\python-3.7.2" - Запустить из интерпретатора Python x32 (Resources\WPy32-3720\python-3.7.2\python.exe)
python.exe "path to your python script.py" - Запустить из интерпретатора Python x64 (Resources\WPy64-3720\python-3.7.2.amd64\python.exe)
- Запустить из под .cmd файла
Execute in the Python x64 Запустить из интерпретатора Python x32
############################################ ############################################
Для запуска срипта из интерпретатора Python x32 необходимо открыть командную строку (cmd), и выполнить следующие команды:
To execute your python script in x32 bit version just write in command line from x32 python directory:
.. code-block:: python .. code-block:: python
cd "\OpenRPA\Resources\WPy64-3720\python-3.7.2.amd64" cd "Resources\WPy32-3720\python-3.7.2" # Установить рабочую директорию там, где находится интерпретатор Python
python.exe "path to your python script.py" python.exe "path to your python script.py" # Запустить интерпретатор Python с файлом скрипта робота "path to your python script.py"
Execute from .cmd file Запустить из интерпретатора Python x64
############################################ ############################################
Для запуска срипта из интерпретатора Python x64 необходимо открыть командную строку (cmd), и выполнить следующие команды:
In order to simplify the execution process you can write several code lines in file with the .cmd extension:
.. code-block:: python .. code-block:: python
cd %~dp0 cd "Resources\WPy32-3720\python-3.7.2.amd64" # Установить рабочую директорию там, где находится интерпретатор Python
copy /Y ..\Resources\WPy32-3720\python-3.7.2\python.exe ..\Resources\WPy32-3720\python-3.7.2\OpenRPAOrchestrator.exe python.exe "path to your python script.py" # Запустить интерпретатор Python с файлом скрипта робота "path to your python script.py"
.\..\Resources\WPy32-3720\python-3.7.2\OpenRPAOrchestrator.exe orchestratorMain.py
pause >nul
Use in studio script (n/a)
############################################
.. code-block:: python
import sys
sys.path.append('../../')
import GUI
import keyboard
import subprocess
import time
#Highlight the UI Object in Folder explorer
GUI.UIOSelector_FocusHighlight([{"class_name":"CabinetWClass","backend":"uia"},{"ctrl_index":2},{"ctrl_index":0},{"ctrl_index":2},{"ctrl_index":0}])
#Wait 2 seconds
time.sleep(3)
#Loop: get child element of UI List
for lItem in GUI.UIOSelector_Get_UIO([{"class_name":"CabinetWClass","backend":"uia"},{"ctrl_index":2},{"ctrl_index":0},{"ctrl_index":2},{"ctrl_index":0}]).children():
print(str(lItem))
Here you can find the docs and examples of the OpenRPA desktop (GUI) app access.
****************************************************************************************************
Desktop app UI access (win32 and UI automation dlls)
****************************************************************************************************
Definitions
############################################
- **UIO** - UI Object (class of pywinauto UI object) [pywinauto.base_wrapper]
- **UIOSelector** - List of dict (key attributes)
- **PWA** - PyWinAuto
- **PWASpecification** - List of dict (key attributes in pywinauto.find_window notation)
- **UIOTree** - Recursive Dict of Dict ... (UI Parent -> Child hierarchy)
- **UIOInfo** - Dict of UIO attributes
- **UIOActivity** - Activity of the UIO (UI object) from the Pywinauto module
- **UIOEI** - UI Object info object
What is UIO?
############################################
UIO is a User Interface Object (pyOpenRPA terminology). For maximum compatibility, this instance is inherited from the object model developed in the [pywinauto library (click to get a list of available class functions)](https://pywinauto.readthedocs.io/en/latest/code/pywinauto.base_wrapper.html).
This approach allows us to implement useful functionality that has already been successfully developed in other libraries, and Supplement it with the missing functionality. In our case, the missing functionality is the ability to dynamically access UIO objects using UIO selectors.
Запустить из под .cmd файла
UIOSelector structure & example
############################################ ############################################
UIOSelector is the list of condition items for the UIO in GUI. Each item has condition attributes for detect applicable UIO. Here is the description of the available condition attributes in item. Упростить процесс запуска и свести инициализацию робота к одному нажатию можно с помощью средстве command shell и .cmd файла.
**Desciption**
.. code-block:: python
[
{
"depth_start" :: [int, start from 1] :: the depth index, where to start check the condition list (default 1),
"depth_end" :: [int, start from 1] :: the depth index, where to stop check the condition list (default 1),
"ctrl_index" || "index" :: [int, starts from 0] :: the index of the UIO in parent UIO child list,
"title" :: [str] :: the condition for the UIO attribute *title*,
"title_re" :: [str] :: regular expression (python ver) for the condition for the UIO attribute *title*,
"rich_text" :: [str] :: the condition for the UIO attribute *rich_text*,
"rich_text_re" :: [str] :: regular expression (python ver) for the condition for the UIO attribute *rich_text*,
"class_name" :: [str] :: the condition for the UIO attribute *class_name*,
"class_name_re" :: [str] :: regular expression (python ver) for the condition for the UIO attribute *class_name*,
"friendly_class_name" :: [str] :: the condition for the UIO attribute *friendly_class_name*,
"friendly_class_name_re" :: [str] :: regular expression (python ver) for the condition for the UIO attribute *friendly_class_name*,
"control_type" :: [str] :: the condition for the UIO attribute *control_type*,
"control_type_re" :: [str] :: regular expression (python ver) for the condition for the UIO attribute *control_type*,
"is_enabled" :: [bool] :: the condition for the UIO attribute *is_enabled*. If UI object is enabled on GUI,
"is_visible" :: [bool] :: the condition for the UIO attribute *is_visible*. If UI object is visible on GUI,
"backend" :: [str, "win32" || "uia"] :: the method of UIO extraction (default "win32"). ATTENTION! Current option can be only for the first item of the UIO selector. For the next items this option will be implemented from the first item.
},
{ ... specification next level UIO }
]
**The UIO selector example**
.. code-block:: python Для этого достаточно выбрать рабочую директорию робота, там создать текстовый .cmd файл, и прописать в нем следующий код:
[
{"class_name":"CalcFrame", "backend":"win32"}, # 1-st level UIO specification
{"title":"Hex", "depth_start":3, "depth_end": 3} # 3-rd level specification (because of attribute depth_start|depth_stop)
]
The UIDesktop module (OpenRPA/Robot/UIDesktop.py)
########################################################################################
The UIDesktop is extension of the pywinauto module which provide access to the desktop apps by the **win32** and **ui automation** dll frameworks (big thx to the Microsoft :) ).
.. code-block:: python .. code-block:: python
# EXAMPLE 1 cd %~dp0 # Установить рабочую директорую там, где находится этот .cmd файл
from pyOpenRPA.Robot import UIDesktop copy /Y ..\Resources\WPy32-3720\python-3.7.2\python.exe ..\Resources\WPy32-3720\python-3.7.2\OpenRPAOrchestrator.exe # Выполнить компирование python.exe на другое наименование, чтобы изменить наименование процесса робота в диспетчере задач (без этой операции все роботы будут отображаться в диспетчере задач как python.exe)
.\..\Resources\WPy32-3720\python-3.7.2\OpenRPAOrchestrator.exe orchestratorMain.py # Выполнить инициализацию скрипта робота RPA
UIDesktop.UIOSelector_Get_UIO( pause >nul # Не закрывать окно консоли после завершения работы скрипта робота
inSpecificationList=[
{"title":"notepad.exe"},{"title":"OK"}], ******************************
inElement=None, Быстрая навигация
inFlagRaiseException=True) ******************************
- `Сообщество pyOpenRPA (telegram) <https://t.me/pyOpenRPA>`_
The UIDesktop module (OpenRPA/Robot/UIDesktop.py) - `Сообщество pyOpenRPA (tenchat) <https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24>`_
######################################################################################## - `Сообщество pyOpenRPA (вконтакте) <https://vk.com/pyopenrpa>`_
The UIDesktop is extension of the pywinauto module which provide access to the desktop apps by the **win32** and **ui automation** dll frameworks (big thx to the Microsoft :) ). - `Презентация pyOpenRPA <https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf>`_
- `Портал pyOpenRPA <https://pyopenrpa.ru>`_
*Naming convention: \<InArgument\>\_\<ActivityName\>\_\<OutArgument - if exist>*<br> - `Репозиторий pyOpenRPA <https://gitlab.com/UnicodeLabs/OpenRPA>`_
****************************************************************************************************
Theory & practice. WEB app UI access (selenium)
****************************************************************************************************
About
###############################################
The pyOpenRPA support web app manipulation (by the Selenium lib).
More docs about selenium you can find here (https://selenium-python.readthedocs.io/)
How to use
###############################################
To start use selenium just import selenium modules in the robot tool. Here is the example of the usage.
.. code-block:: python
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome()
driver.get("http://www.python.org")
assert "Python" in driver.title
elem = driver.find_element_by_name("q")
elem.clear()
elem.send_keys("pycon")
elem.send_keys(Keys.RETURN)
assert "No results found." not in driver.page_source
driver.close()
****************************************************************************************************
Theory & practice. Keyboard & mouse manipulation
****************************************************************************************************
****************************************************************************************************
Theory & practice. Screen capture & image recognition
****************************************************************************************************
How to automate image recognition on PC
###########################################
Here you can find any ways you need to use in your business case:
- Find the exact match on the screen with the other image
- Use text recognition module (OCR)
- Use computer vision (CV) to identify the objects on screen/image/video
- Use artificial intelligence (AI) to make custom identification/classification/text recognition

@ -1,10 +0,0 @@
####################################
9. Зависимости
####################################
Python 3 x32 [psutil, pywinauto, wmi, PIL, keyboard, pyautogui, win32api (pywin32), selenium, openCV, tesseract, requests, lxml, PyMuPDF]
Python 3 x64 [psutil, pywinauto, wmi, PIL, keyboard, pyautogui, win32api (pywin32), selenium, openCV, tesseract, requests, lxml, PyMuPDF]
pywinauto (Windows GUI automation)
Semantic UI CSS framework
JsRender by https://www.jsviews.com (switch to Handlebars)
Handlebars

@ -1,7 +1,32 @@
.. _module.studio.description: .. _module.studio.description:
************************ ####################################
1. Описание 1. Описание
####################################
************************
Общее
************************ ************************
pyOpenRPA Studio is the executable process. Модуль студии обеспечивает всю необходимую функциональность взаимодействия с UI объектами различных приложений, запущенных в сессии.
В разделе :ref:`module.studio.how-to-use` вы найдете практическое руководство по работе с пользовательским интерфейсом студии, которая отрывается в веб браузере.
Дорогие коллеги!
Мы знаем, что с pyOpenRPA вы сможете существенно улучшить качество вашего бизнеса. Платформа роботизации pyOpenRPA - это разработка, которая дает возможность делать виртуальных сотрудников (программных роботов RPA) выгодными, начиная от эффекта всего в **10 тыс. руб.** И управлять ими будете только Вы!
Если у вас останутся вопросы, то вы всегда можете обратиться в центр поддержки клиентов pyOpenRPA. Контакты: :ref:`3.-Copyrights-&-Contacts`
pyOpenRPA - роботы помогут!
******************************
Быстрая навигация
******************************
- `Сообщество pyOpenRPA (telegram) <https://t.me/pyOpenRPA>`_
- `Сообщество pyOpenRPA (tenchat) <https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24>`_
- `Сообщество pyOpenRPA (вконтакте) <https://vk.com/pyopenrpa>`_
- `Презентация pyOpenRPA <https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf>`_
- `Портал pyOpenRPA <https://pyopenrpa.ru>`_
- `Репозиторий pyOpenRPA <https://gitlab.com/UnicodeLabs/OpenRPA>`_

@ -1,126 +1,148 @@
.. _module.studio.how-to-use:
#################################### ####################################
2. Как использовать? 2. Как использовать?
#################################### ####################################
Content .. _general:
=======
************************
- `How to run <#how-to-run>`__ Общее
- `UI Description <#ui-description>`__ ************************
- `How to extract UI tree <#how-to-extract-ui-tree>`__
- `How to search UI object by mouse - `Как запустить? <#how-to-run>`__
hover <#how-to-search-ui-object-by-mouse-hover>`__ - `Описание UI студии <#ui-description>`__
- `How to extract UI object - `Извлечь UI дерево <#how-to-extract-ui-tree>`__
properties <#how-to-extract-ui-object-properties>`__ - `Поиск UI объекта по наведению мыши <#how-to-search-ui-object-by-mouse-hover>`__
- `Извлечь свойства UI объекта <#how-to-extract-ui-object-properties>`__
How to run
========== .. _how-to-run:
- For OS x32 ************************
- Run (double click): OpenRPA\_32.cmd (for OS x32) Как запустить?
- For OS x64 ************************
- Run (double click): OpenRPA\_64.cmd (for OS x64)
- Wait text "running server" in console. Default browser will be open - Запустить файл Studio\pyOpenRPA.Studio_x64.cmd
automatically - Ожидать текст в окне консоли: "running server". Браузер, установленный по умолчанию откроется автоматически
- **Attention!** The studio tool does not support the Internet explorer - **!ВНИМАНИЕ!** Студия поддерживает все версии браузеров, кроме Internet Explorer.
(any version) for GUI rendering (lol)
.. image:: /img/504b98f76747f63900a2943532a946bb.png .. image:: /img/504b98f76747f63900a2943532a946bb.png
:alt: 504b98f76747f63900a2943532a946bb.png :alt: 504b98f76747f63900a2943532a946bb.png
.. _ui-description:
UI Description ************************
============== Описание UI студии
************************
**The studio tool GUI contains of:** **Интерфейс (UI) студии состоит из следующих компонентов:**
1. UI tree viewer 1. Обозреватель UI дерева
2. Selected UI object hierarchy list 2. Обозреватель иерархии выбранного UI объекта
3. Selected UI object property list 3. Обозреватель свойств выбранного уровня UI объекта
4. UIO selector editor 4. Редактор UIO селектора
5. UIO action panel 5. Панель активностей над UIO объектом
6. Another Python activity panel 6. Панель других Python активностей
7. Action/activity list 7. Список активностей
*Look it on the GUI screenshots are listed below* *Ниже представлены скриншоты студии*
GUI Screenshot 1 Скриншот 1
---------------- ----------------
.. image:: /img/d3d6ad14a7e50843bd89d2b14a092fee.png .. image:: /img/d3d6ad14a7e50843bd89d2b14a092fee.png
:alt: 504b98f76747f63900a2943532a946bb.png :alt: 504b98f76747f63900a2943532a946bb.png
GUI Screenshot 2 Скриншот 2
---------------- ----------------
.. image:: /img/65b7d51c0a5b21e6b27dc23d4062d3ca.png .. image:: /img/65b7d51c0a5b21e6b27dc23d4062d3ca.png
:alt: 65b7d51c0a5b21e6b27dc23d4062d3ca.png :alt: 65b7d51c0a5b21e6b27dc23d4062d3ca.png
How to extract UI tree .. _how-to-extract-ui-tree:
======================
************************
Извлечь UI дерево
************************
In order to extract the UI tree do the following: in ``UI tree viewer`` Чтобы извлечь дерево пользовательского интерфейса выполните следующие действия: в ``UI Tree viewer`` выбрать интересующий UI объект и нажать кнопку ``Expand``.
choose the object you are interested and click the button "Expand". ##
Action: Click the button "Expand" Действие: Нажать по кнопке "Expand"
--------------------------------------- ---------------------------------------
.. image:: /img/6effc376ff6ea928840674bd744caced.png .. image:: /img/6effc376ff6ea928840674bd744caced.png
:alt: 6effc376ff6ea928840674bd744caced.png :alt: 6effc376ff6ea928840674bd744caced.png
Result Итог
--------------------------------------- ---------------------------------------
.. image:: /img/18b9ab36126c8c32168bf5bbb9330701.png .. image:: /img/18b9ab36126c8c32168bf5bbb9330701.png
:alt: 18b9ab36126c8c32168bf5bbb9330701.png :alt: 18b9ab36126c8c32168bf5bbb9330701.png
How to search UI object by mouse hover
--------------------------------------- ---------------------------------------
In order to search UI object do the
following: in ``UI tree viewer`` choose the parent object, where you are .. _how-to-search-ui-object-by-mouse-hover:
want to search UI object, and click the button "Mouse search". The mouse
search mode will start. Turn mouse on the UI object you are interested ***********************************
and wait when the studio will highlight the UI object. After the Поиск UI объекта по наведению мыши
hightlight hold the "Ctrl" key and wait 3 seconds. The interested UI ***********************************
object will be shown in ``UI tree viewer``.
Чтобы выполнить поиск UI объекта пользовательского интерфейса, необходимо в ``UI tree viewer`` выбрать родительский UI объект, в котором вы хотите выполнить поиск, и нажать кнопку ``Mouse search``.
Action: Click the button "Mouse search"
Будет активирован режим поиск UI объекта по курсору мыши. Наведите курсор мыши на интересующий вас объект пользовательского интерфейса и дождитесь, когда студия выделит объект пользовательского интерфейса. После выделения цветов удерживайте клавишу "Ctrl" и подождите 3 секунды. Интересующий UI объект будет показан в ``UI tree viewer``.
Действие: Нажать кнопку "Mouse search"
--------------------------------------- ---------------------------------------
.. image:: /img/84d7e4de0c840631f87cf7b325b53ad8.png .. image:: /img/84d7e4de0c840631f87cf7b325b53ad8.png
:alt: 84d7e4de0c840631f87cf7b325b53ad8.png :alt: 84d7e4de0c840631f87cf7b325b53ad8.png
Action: Turn mouse on the UI object you are interested and hold the "Ctrl" key for 3 seconds Действие: Навести курсор мыши на UI объект, который интересует и зажать клавишу "Ctrl" на 3 секунды
-------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------
.. image:: /img/b7c38d622bf5b7afa5b26d1686d7302a.png .. image:: /img/b7c38d622bf5b7afa5b26d1686d7302a.png
:alt: b7c38d622bf5b7afa5b26d1686d7302a.png :alt: b7c38d622bf5b7afa5b26d1686d7302a.png
Result: The interested UI object will be shown in ``UI tree viewer`` Итог: Интересующий UI объект будет отображен в ``UI tree viewer``
-------------------------------------------------------------------- --------------------------------------------------------------------
.. image:: /img/629bbf4db2c01b9c640194230949fcd2.png .. image:: /img/629bbf4db2c01b9c640194230949fcd2.png
:alt: 629bbf4db2c01b9c640194230949fcd2.png :alt: 629bbf4db2c01b9c640194230949fcd2.png
How to extract UI object properties .. _how-to-extract-ui-object-properties:
===================================
***********************************
Извлечь свойства UI объекта
***********************************
In order to extract UI object properties do the following: in Чтобы извлечь свойства UI объекта, необходимо в
``Selected UI object hierarchy list`` choose the UI object you are ``Selected UI object hierarchy list`` выбрать интересующий UI объект и щелкнуть по нему. Список свойств UI объекта будет отображен в ``Selected UI object property list``
interested and click it. The UI object property list will be shown in
``Selected UI object property list``
Action: Choose the UI object you are interested and click it Действие: Choose the UI object you are interested and click it
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
.. image:: /img/2c27be5bdde20b5d062cbb40e74eaec5.png .. image:: /img/2c27be5bdde20b5d062cbb40e74eaec5.png
:alt: 2c27be5bdde20b5d062cbb40e74eaec5.png :alt: 2c27be5bdde20b5d062cbb40e74eaec5.png
Result: The UI object property list will be shown in ``Selected UI object property list`` Итог: Свойства UI объекта будут отображены в ``Selected UI object property list``
----------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------
.. image:: /img/f235ae29099a713e0246cd574ac3a17c.png .. image:: /img/f235ae29099a713e0246cd574ac3a17c.png
:alt: f235ae29099a713e0246cd574ac3a17c.png :alt: f235ae29099a713e0246cd574ac3a17c.png
******************************
Быстрая навигация
******************************
- `Сообщество pyOpenRPA (telegram) <https://t.me/pyOpenRPA>`_
- `Сообщество pyOpenRPA (tenchat) <https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24>`_
- `Сообщество pyOpenRPA (вконтакте) <https://vk.com/pyopenrpa>`_
- `Презентация pyOpenRPA <https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf>`_
- `Портал pyOpenRPA <https://pyopenrpa.ru>`_
- `Репозиторий pyOpenRPA <https://gitlab.com/UnicodeLabs/OpenRPA>`_

@ -1,5 +1,5 @@
#################################### ####################################
2. Defs StopSafe 2. Функции StopSafe
#################################### ####################################
How to use StopSafe on the robot side How to use StopSafe on the robot side

@ -51,9 +51,9 @@ pyOpenRPA - роботы помогут!
**Для коммерческого использования:** **Для коммерческого использования:**
* Вариант 1: Подписка на премиальную техническую поддержку от вендора (ежемесячно от 66 900 руб. без НДС) * **Вариант 1:** Подписка на премиальную техническую поддержку от вендора (ежемесячно от 66 900 руб. без НДС)
* Вариант 2: Покупка бессрочной лицензии на текущую версию pyOpenRPA и ниже (разовый платеж 299 000 руб. без НДС) * **Вариант 2:** Покупка бессрочной лицензии на текущую версию pyOpenRPA и ниже (разовый платеж 299 000 руб. без НДС)
* Вариант 3: Покупка бессрочной лицензии на 1-го робота, который будет использовать текущую версию pyOpenPRA и ниже (разовый платеж 99 000 руб. без НДС) * **Вариант 3:** Покупка бессрочной лицензии на 1-го робота, который будет использовать текущую версию pyOpenPRA и ниже (разовый платеж 99 000 руб. без НДС)
Используя ПО pyOpenRPA Вы осознаете свою ответственность в случаях нарушения лицензионного законодательства и совершения неправомерных действий. Используя ПО pyOpenRPA Вы осознаете свою ответственность в случаях нарушения лицензионного законодательства и совершения неправомерных действий.
@ -244,4 +244,17 @@ Wiki структура
:caption: ИНСТРУМЕНТЫ :caption: ИНСТРУМЕНТЫ
:glob: :glob:
Tools/* Tools/*
******************************
Быстрая навигация
******************************
- `Сообщество pyOpenRPA (telegram) <https://t.me/pyOpenRPA>`_
- `Сообщество pyOpenRPA (tenchat) <https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24>`_
- `Сообщество pyOpenRPA (вконтакте) <https://vk.com/pyopenrpa>`_
- `Презентация pyOpenRPA <https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf>`_
- `Портал pyOpenRPA <https://pyopenrpa.ru>`_
- `Репозиторий pyOpenRPA <https://gitlab.com/UnicodeLabs/OpenRPA>`_

@ -0,0 +1 @@
"C:\Abs\Archive\scopeSrcUL\pyOpenRPA\Resources\wkhtmltopdf\bin\wkhtmltopdf.exe" --javascript-delay 5000 --load-error-handling ignore --enable-local-file-access C:\Abs\Archive\scopeSrcUL\pyOpenRPA\Wiki\RUS_Guide\html\index.html C:\Abs\Archive\scopeSrcUL\pyOpenRPA\Wiki\RUS_Guide\html\01_HowToInstall.html C:\Abs\Archive\scopeSrcUL\pyOpenRPA\Wiki\RUS_Guide\html\03_Copyrights_Contacts.html C:\Abs\Archive\scopeSrcUL\pyOpenRPA\Wiki\RUS_Guide\html\Robot\01_Robot.html C:\Abs\Archive\scopeSrcUL\pyOpenRPA\Wiki\RUS_Guide\html\Robot\02_uidesktop.html C:\Abs\Archive\scopeSrcUL\pyOpenRPA\Wiki\RUS_Guide\html\Robot\03_uiweb.html C:\Abs\Archive\scopeSrcUL\pyOpenRPA\Wiki\RUS_Guide\html\Robot\04_keyboard.html C:\Abs\Archive\scopeSrcUL\pyOpenRPA\Wiki\RUS_Guide\html\Robot\05_clipboard.html C:\Abs\Archive\scopeSrcUL\pyOpenRPA\Wiki\RUS_Guide\html\Robot\06_mouse.html C:\Abs\Archive\scopeSrcUL\pyOpenRPA\Wiki\RUS_Guide\html\Robot\07_image.html C:\Abs\Archive\scopeSrcUL\pyOpenRPA\Wiki\RUS_Guide\html\Robot\08_HowToUse.html C:\Abs\Archive\scopeSrcUL\pyOpenRPA\Wiki\RUS_Guide\html\Studio\01_Studio.html C:\Abs\Archive\scopeSrcUL\pyOpenRPA\Wiki\RUS_Guide\html\Studio\02_HowToUse.html C:\Abs\Archive\scopeSrcUL\pyOpenRPA\Wiki\RUS_Guide\html\Orchestrator\01_Orchestrator.html C:\Abs\Archive\scopeSrcUL\pyOpenRPA\Wiki\RUS_Guide\html\Orchestrator\02_Defs.html C:\Abs\Archive\scopeSrcUL\pyOpenRPA\Wiki\RUS_Guide\html\Orchestrator\03_gSettingsTemplate.html C:\Abs\Archive\scopeSrcUL\pyOpenRPA\Wiki\RUS_Guide\html\Orchestrator\04_HowToUse.html C:\Abs\Archive\scopeSrcUL\pyOpenRPA\Wiki\RUS_Guide\html\Orchestrator\05_UAC.html C:\Abs\Archive\scopeSrcUL\pyOpenRPA\Wiki\RUS_Guide\pdf\pyOpenRPA_Guide_RUS.pdf

@ -4,17 +4,42 @@ import win32clipboard
#################################### ####################################
# GUI Module - interaction with Windows clipboard # GUI Module - interaction with Windows clipboard
################ def Get():
###ClipboardGet """
################ Получить текстовое содержимое буфера обмена.
.. code-block:: python
# Clipboard: Взаимодействие с буфером
from pyOpenRPA.Robot import Clipboard
lClipStr = Clipboard.Get()
:return: Текстовое содержимое буфера обмена
:rtype: str
"""
return ClipboardGet()
def Set(inTextStr:str):
"""
Установить текстовое содержимое в буфер обмена.
.. code-block:: python
# Clipboard: Взаимодействие с буфером
from pyOpenRPA.Robot import Clipboard
lClipStr = Clipboard.Set(inTextStr="HELLO WORLD")
:param inTextStr: Текстовое содержимое для установки в буфера обмена
:type inTextStr: str
"""
ClipboardSet(inText=inTextStr)
def ClipboardGet(): def ClipboardGet():
win32clipboard.OpenClipboard() win32clipboard.OpenClipboard()
lResult = win32clipboard.GetClipboardData(win32clipboard.CF_UNICODETEXT) lResult = win32clipboard.GetClipboardData(win32clipboard.CF_UNICODETEXT)
win32clipboard.CloseClipboard() win32clipboard.CloseClipboard()
return lResult return lResult
################
###ClipboardSet
################
def ClipboardSet(inText): def ClipboardSet(inText):
win32clipboard.OpenClipboard() win32clipboard.OpenClipboard()
win32clipboard.EmptyClipboard() win32clipboard.EmptyClipboard()

@ -3,7 +3,7 @@ r"""
The pyOpenRPA package The pyOpenRPA package
""" """
__version__ = 'v1.2.12' __version__ = 'v1.2.13'
__all__ = [] __all__ = []
__author__ = 'Ivan Maslov <ivan.maslov@pyopenrpa.ru>' __author__ = 'Ivan Maslov <ivan.maslov@pyopenrpa.ru>'
#from .Core import Robot #from .Core import Robot

@ -41,7 +41,7 @@
<link rel="index" title="Алфавитный указатель" href="genindex.html" /> <link rel="index" title="Алфавитный указатель" href="genindex.html" />
<link rel="search" title="Поиск" href="search.html" /> <link rel="search" title="Поиск" href="search.html" />
<link rel="next" title="2. Права &amp; Контакты" href="03_Copyrights_Contacts.html" /> <link rel="next" title="2. Лицензия &amp; Контакты" href="03_Copyrights_Contacts.html" />
<link rel="prev" title="Портал документации pyOpenRPA" href="index.html" /> <link rel="prev" title="Портал документации pyOpenRPA" href="index.html" />
</head> </head>
@ -91,24 +91,22 @@
<ul class="current"> <ul class="current">
<li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li> <li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">1. Первый запуск</a><ul> <li class="toctree-l1 current"><a class="current reference internal" href="#">1. Первый запуск</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#how-to-check-installation">How to check installation</a></li> <li class="toctree-l2"><a class="reference internal" href="#pyopenrpa">Проверить, что pyOpenRPA развернута корректно?</a></li>
<li class="toctree-l2"><a class="reference internal" href="#system-requirements">System requirements</a></li> <li class="toctree-l2"><a class="reference internal" href="#id2">Быстрая навигация</a></li>
</ul> </ul>
</li> </li>
<li class="toctree-l1"><a class="reference internal" href="03_Copyrights_Contacts.html">2. Права &amp; Контакты</a></li> <li class="toctree-l1"><a class="reference internal" href="03_Copyrights_Contacts.html">2. Лицензия &amp; Контакты</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="Robot/01_Robot.html">1. Описание</a></li> <li class="toctree-l1"><a class="reference internal" href="Robot/01_Robot.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="Robot/02_Defs.html">2. Функции</a></li> <li class="toctree-l1"><a class="reference internal" href="Robot/02_uidesktop.html">2. Функции UIDesktop</a></li>
<li class="toctree-l1"><a class="reference internal" href="Robot/02_uidesktop.html">2. UIDesktop</a></li> <li class="toctree-l1"><a class="reference internal" href="Robot/03_uiweb.html">3. Функции UIWeb</a></li>
<li class="toctree-l1"><a class="reference internal" href="Robot/03_uiweb.html">3. UIWeb</a></li> <li class="toctree-l1"><a class="reference internal" href="Robot/04_keyboard.html">4. Функции Keyboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="Robot/04_keyboard.html">4. Keyboard</a></li> <li class="toctree-l1"><a class="reference internal" href="Robot/05_clipboard.html">5. Функции Clipboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="Robot/05_clipboard.html">5. Clipboard</a></li> <li class="toctree-l1"><a class="reference internal" href="Robot/06_mouse.html">6. Функции Mouse</a></li>
<li class="toctree-l1"><a class="reference internal" href="Robot/06_mouse.html">6. Mouse</a></li> <li class="toctree-l1"><a class="reference internal" href="Robot/07_image.html">7. Функции Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="Robot/07_image.html">7. Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="Robot/08_HowToUse.html">8. Как использовать?</a></li> <li class="toctree-l1"><a class="reference internal" href="Robot/08_HowToUse.html">8. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="Robot/09_Dependencies.html">9. Зависимости</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p>
<ul> <ul>
@ -117,20 +115,19 @@
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="Orchestrator/01_Orchestrator.html">1. Description</a></li> <li class="toctree-l1"><a class="reference internal" href="Orchestrator/01_Orchestrator.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="Orchestrator/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="Orchestrator/02_Defs.html">2. Функции</a></li>
<li class="toctree-l1"><a class="reference internal" href="Orchestrator/03_gSettingsTemplate.html">3. gSettings Template</a></li> <li class="toctree-l1"><a class="reference internal" href="Orchestrator/03_gSettingsTemplate.html">3. Настройки GSettings (шаблон)</a></li>
<li class="toctree-l1"><a class="reference internal" href="Orchestrator/04_HowToUse.html">4. How to use</a></li> <li class="toctree-l1"><a class="reference internal" href="Orchestrator/04_HowToUse.html">4. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="Orchestrator/05_UAC.html">5. UAC - User Access Control</a></li> <li class="toctree-l1"><a class="reference internal" href="Orchestrator/05_UAC.html">5. Права доступа пользователей UAC</a></li>
<li class="toctree-l1"><a class="reference internal" href="Orchestrator/06_Defs%20Managers.html">6. Defs Managers</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="Agent/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="Agent/02_Defs.html">2. Функции</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p> <p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="Tools/02_Defs.html">2. Defs StopSafe</a></li> <li class="toctree-l1"><a class="reference internal" href="Tools/02_Defs.html">2. Функции StopSafe</a></li>
</ul> </ul>
@ -200,35 +197,35 @@
<div class="section" id="id1"> <div class="section" id="id1">
<h1>1. Первый запуск<a class="headerlink" href="#id1" title="Ссылка на этот заголовок"></a></h1> <h1>1. Первый запуск<a class="headerlink" href="#id1" title="Ссылка на этот заголовок"></a></h1>
<p>Are you ready to install the pyOpenRPA solution on your machine?</p> <p>Готовы испытать всю мощь перспективных технологий?</p>
<p>Ok, we start. <p>Будет очень интересно - начинаем!</p>
<strong>Do the following operations:</strong></p> <p><strong>Для начала необходимо выполнить следующие действия:</strong></p>
<ul class="simple"> <ul class="simple">
<li><p>Download the pyOpenRPA package from master branch on GitLab [Download ZIP](<a class="reference external" href="https://gitlab.com/UnicodeLabs/OpenRPA/-/archive/master/OpenRPA-master.zip">https://gitlab.com/UnicodeLabs/OpenRPA/-/archive/master/OpenRPA-master.zip</a>)</p></li> <li><p>Скачать пакет pyOpenRPA c главной страницы <a class="reference external" href="https://pyopenrpa.ru/">https://pyopenrpa.ru/</a></p></li>
<li><p>Unzip the package</p></li> <li><p>Распаковать пакет куда угодно!</p></li>
</ul> </ul>
<p><strong>Installation has been completed :)</strong></p> <p><strong>ВСЁ - Развертывание pyOpenRPA завершено! :)</strong></p>
<div class="section" id="how-to-check-installation"> <div class="section" id="pyopenrpa">
<h2>How to check installation<a class="headerlink" href="#how-to-check-installation" title="Ссылка на этот заголовок"></a></h2> <h2>Проверить, что pyOpenRPA развернута корректно?<a class="headerlink" href="#pyopenrpa" title="Ссылка на этот заголовок"></a></h2>
<p>В папке pyOpenRPA запустить интерпретатор Python</p>
<ul class="simple"> <ul class="simple">
<li><p>Run portable python (built in the pyOpenRPA)</p> <li><p>x32 Python (GIT\Resources\WPy32-3720\python-3.7.2\python.exe)</p></li>
<ul> <li><p>x64 Python (GIT\Resources\WPy64-3720\python-3.7.2.amd64\python.exe)</p></li>
<li><p>x32 python (GIT\Resources\WPy32-3720\python-3.7.2\python.exe)</p></li>
<li><p>x64 python (GIT\Resources\WPy64-3720\python-3.7.2.amd64\python.exe)</p></li>
</ul>
</li>
</ul> </ul>
<p><strong>The pyOpenRPA has been successfully installed if the portable python 3.7.2 was started without any exceptions (see screenshot).</strong></p> <p><strong>Платформа pyOpenRPA успешно развернута корректно. если интерпретаторы python 3.7.2 были запущены без проблем (см. скриншот).</strong></p>
<img alt="cb5dec8cecafa7d64f6cd14b2672acce.png" src="_images/cb5dec8cecafa7d64f6cd14b2672acce.png" /> <img alt="cb5dec8cecafa7d64f6cd14b2672acce.png" src="_images/cb5dec8cecafa7d64f6cd14b2672acce.png" />
</div> </div>
<div class="section" id="system-requirements"> <div class="section" id="id2">
<h2>System requirements<a class="headerlink" href="#system-requirements" title="Ссылка на этот заголовок"></a></h2> <h2>Быстрая навигация<a class="headerlink" href="#id2" title="Ссылка на этот заголовок"></a></h2>
<ul class="simple"> <ul class="simple">
<li><p>OS Windows 7+. <em>Need Windows package KB2999226 if use windows Vista/7/8/8.1/Server 2008/Server 2012 (https://support.microsoft.com/ru-ru/help/2999226)</em></p></li> <li><p><a class="reference external" href="https://t.me/pyOpenRPA">Сообщество pyOpenRPA (telegram)</a></p></li>
<li><p>For OpenCV: OS Windows 7/8/8/10 only (no Windows Server)</p></li> <li><p><a class="reference external" href="https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24">Сообщество pyOpenRPA (tenchat)</a></p></li>
<li><p><a class="reference external" href="https://vk.com/pyopenrpa">Сообщество pyOpenRPA (вконтакте)</a></p></li>
<li><p><a class="reference external" href="https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf">Презентация pyOpenRPA</a></p></li>
<li><p><a class="reference external" href="https://pyopenrpa.ru">Портал pyOpenRPA</a></p></li>
<li><p><a class="reference external" href="https://gitlab.com/UnicodeLabs/OpenRPA">Репозиторий pyOpenRPA</a></p></li>
</ul> </ul>
<p> .. v1.2.12 replace:: v1.2.12 <p> .. v1.2.12 replace:: v1.2.12</p>
.. <a href="#id2"><span class="problematic" id="id3">|author|</span></a> replace:: Ivan Maslov &lt;<a class="reference external" href="mailto:ivan&#46;maslov&#37;&#52;&#48;unicodelabs&#46;ru">ivan<span>&#46;</span>maslov<span>&#64;</span>unicodelabs<span>&#46;</span>ru</a>&gt;</p>
<p></p> <p></p>
</div> </div>
</div> </div>
@ -239,7 +236,7 @@
</div> </div>
<footer> <footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="03_Copyrights_Contacts.html" class="btn btn-neutral float-right" title="2. Права &amp; Контакты" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a> <a href="03_Copyrights_Contacts.html" class="btn btn-neutral float-right" title="2. Лицензия &amp; Контакты" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="index.html" class="btn btn-neutral float-left" title="Портал документации pyOpenRPA" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a> <a href="index.html" class="btn btn-neutral float-left" title="Портал документации pyOpenRPA" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a>
</div> </div>

@ -7,7 +7,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>2. Права &amp; Контакты &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title> <title>2. Лицензия &amp; Контакты &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title>
@ -91,25 +91,27 @@
<ul class="current"> <ul class="current">
<li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li> <li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li>
<li class="toctree-l1"><a class="reference internal" href="01_HowToInstall.html">1. Первый запуск</a></li> <li class="toctree-l1"><a class="reference internal" href="01_HowToInstall.html">1. Первый запуск</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">2. Права &amp; Контакты</a><ul> <li class="toctree-l1 current"><a class="current reference internal" href="#">2. Лицензия &amp; Контакты</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#id2">Центр поддержки клиентов</a></li> <li class="toctree-l2"><a class="reference internal" href="#id2">Лицензия</a></li>
<li class="toctree-l2"><a class="reference internal" href="#id3">Иван Маслов (Основатель &amp; генеральный директор)</a></li> <li class="toctree-l2"><a class="reference internal" href="#id3">Автор</a></li>
<li class="toctree-l2"><a class="reference internal" href="#id4">Используемые сторонние компоненты (лицензионная чистота)</a></li> <li class="toctree-l2"><a class="reference internal" href="#id4">Правообладатель</a></li>
<li class="toctree-l2"><a class="reference internal" href="#id5">Центр поддержки клиентов</a></li>
<li class="toctree-l2"><a class="reference internal" href="#id8">Иван Маслов (генеральный директор ООО «ОПЕН РПА»)</a></li>
<li class="toctree-l2"><a class="reference internal" href="#id11">Используемые сторонние компоненты (лицензионная чистота)</a></li>
<li class="toctree-l2"><a class="reference internal" href="#id12">Быстрая навигация</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="Robot/01_Robot.html">1. Описание</a></li> <li class="toctree-l1"><a class="reference internal" href="Robot/01_Robot.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="Robot/02_Defs.html">2. Функции</a></li> <li class="toctree-l1"><a class="reference internal" href="Robot/02_uidesktop.html">2. Функции UIDesktop</a></li>
<li class="toctree-l1"><a class="reference internal" href="Robot/02_uidesktop.html">2. UIDesktop</a></li> <li class="toctree-l1"><a class="reference internal" href="Robot/03_uiweb.html">3. Функции UIWeb</a></li>
<li class="toctree-l1"><a class="reference internal" href="Robot/03_uiweb.html">3. UIWeb</a></li> <li class="toctree-l1"><a class="reference internal" href="Robot/04_keyboard.html">4. Функции Keyboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="Robot/04_keyboard.html">4. Keyboard</a></li> <li class="toctree-l1"><a class="reference internal" href="Robot/05_clipboard.html">5. Функции Clipboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="Robot/05_clipboard.html">5. Clipboard</a></li> <li class="toctree-l1"><a class="reference internal" href="Robot/06_mouse.html">6. Функции Mouse</a></li>
<li class="toctree-l1"><a class="reference internal" href="Robot/06_mouse.html">6. Mouse</a></li> <li class="toctree-l1"><a class="reference internal" href="Robot/07_image.html">7. Функции Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="Robot/07_image.html">7. Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="Robot/08_HowToUse.html">8. Как использовать?</a></li> <li class="toctree-l1"><a class="reference internal" href="Robot/08_HowToUse.html">8. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="Robot/09_Dependencies.html">9. Зависимости</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p>
<ul> <ul>
@ -118,20 +120,19 @@
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="Orchestrator/01_Orchestrator.html">1. Description</a></li> <li class="toctree-l1"><a class="reference internal" href="Orchestrator/01_Orchestrator.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="Orchestrator/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="Orchestrator/02_Defs.html">2. Функции</a></li>
<li class="toctree-l1"><a class="reference internal" href="Orchestrator/03_gSettingsTemplate.html">3. gSettings Template</a></li> <li class="toctree-l1"><a class="reference internal" href="Orchestrator/03_gSettingsTemplate.html">3. Настройки GSettings (шаблон)</a></li>
<li class="toctree-l1"><a class="reference internal" href="Orchestrator/04_HowToUse.html">4. How to use</a></li> <li class="toctree-l1"><a class="reference internal" href="Orchestrator/04_HowToUse.html">4. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="Orchestrator/05_UAC.html">5. UAC - User Access Control</a></li> <li class="toctree-l1"><a class="reference internal" href="Orchestrator/05_UAC.html">5. Права доступа пользователей UAC</a></li>
<li class="toctree-l1"><a class="reference internal" href="Orchestrator/06_Defs%20Managers.html">6. Defs Managers</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="Agent/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="Agent/02_Defs.html">2. Функции</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p> <p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="Tools/02_Defs.html">2. Defs StopSafe</a></li> <li class="toctree-l1"><a class="reference internal" href="Tools/02_Defs.html">2. Функции StopSafe</a></li>
</ul> </ul>
@ -180,7 +181,7 @@
<li><a href="index.html" class="icon icon-home"></a> &raquo;</li> <li><a href="index.html" class="icon icon-home"></a> &raquo;</li>
<li>2. Права &amp; Контакты</li> <li>2. Лицензия &amp; Контакты</li>
<li class="wy-breadcrumbs-aside"> <li class="wy-breadcrumbs-aside">
@ -200,58 +201,85 @@
<div itemprop="articleBody"> <div itemprop="articleBody">
<div class="section" id="copyrights-contacts"> <div class="section" id="copyrights-contacts">
<span id="id1"></span><h1>2. Права &amp; Контакты<a class="headerlink" href="#copyrights-contacts" title="Ссылка на этот заголовок"></a></h1> <span id="id1"></span><h1>2. Лицензия &amp; Контакты<a class="headerlink" href="#copyrights-contacts" title="Ссылка на этот заголовок"></a></h1>
<p>pyOpenRPA is created by Ivan Maslov (Russia).
Hosted by PYOPENRPA LLC (Russia)</p>
<p>My purpose is to create #IT4Business models in the companies.
I can help you to create the new #IT4Business in your company.
#IT4Business homepage - <a class="reference external" href="https://www.facebook.com/RU.IT4Business">https://www.facebook.com/RU.IT4Business</a>
#IT4Busines is the methodology which is created for build compact fast and reliable IT function in company.
If you has many IT specialists, very long deadlines for the IT tasks, many bugs in IT software - #IT4Business is for you :)</p>
<p>If you need some IT help - feel free to contact me (prefer e-mail or skype).
If you will find some issue in pyOpenRPA - write about it to me via e-mail/skype/gitlab issue.</p>
<p>Thank you!</p>
<div class="section" id="id2"> <div class="section" id="id2">
<h2>Центр поддержки клиентов<a class="headerlink" href="#id2" title="Ссылка на этот заголовок"></a></h2> <h2>Лицензия<a class="headerlink" href="#id2" title="Ссылка на этот заголовок"></a></h2>
<p>Лицензия pyOpenRPA разрешает бесплатное использование только для некоммерческих организаций и физических лиц (не ИП и не самозанятый). В остальных случаях требуется получение цифрового сертификата от правообладателя (ООО «ОПЕН РПА»).</p>
<p>Получить, проверить сертификат, а также ознакомиться с текстом лицензионного соглашения Вы можете по адресу:
<a class="reference external" href="https://pyopenrpa.ru/verification">https://pyopenrpa.ru/verification</a></p>
<p>pyOpenRPA не использует какие-либо инструменты физической блокировки функциональности своего ПО.
По всем вопросам Вы можете обратиться к правообладателю, контакты см. по адресу:
<a class="reference external" href="https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf">https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf</a>
Используя ПО pyOpenRPA Вы осознаете свою ответственность в случаях нарушения лицензионного законодательства и совершения неправомерных действий.</p>
<p>ВНИМАНИЕ! НЕЗНАНИЕ ЗАКОНА НЕ ОСВОБОЖДАЕТ ОТ ОТВЕТСТВЕННОСТИ.</p>
<p>pyOpenRPA - роботы Вам помогут!</p>
</div>
<div class="section" id="id3">
<h2>Автор<a class="headerlink" href="#id3" title="Ссылка на этот заголовок"></a></h2>
<p>Маслов Иван Дмитриевич (с 2019г.)</p>
</div>
<div class="section" id="id4">
<h2>Правообладатель<a class="headerlink" href="#id4" title="Ссылка на этот заголовок"></a></h2>
<p><strong>с 2022г.</strong>
ООО «ОПЕН РПА», ОГРН 1227700251350, ИНН/КПП 9718191421/771801001
г. Москва: 125310, улица Муравская
г. Санкт-Петербург: 197022, улица Льва Толстого</p>
<p><strong>с 2019г. по 2021г.</strong>
Маслов Иван Дмитриевич (с 2019г.)</p>
</div>
<div class="section" id="id5">
<h2>Центр поддержки клиентов<a class="headerlink" href="#id5" title="Ссылка на этот заголовок"></a></h2>
<p>У вас остались вопросы? Мы вам поможем!</p> <p>У вас остались вопросы? Мы вам поможем!</p>
<ul class="simple"> <ul class="simple">
<li><p>Телефон/WhatsApp: +7 (995) 233-45-31</p></li> <li><p>Телефон/WhatsApp: +7 (995) 233-45-31</p></li>
<li><p>Почта: <a class="reference external" href="mailto:Support&#37;&#52;&#48;pyOpenRPA&#46;ru">Support<span>&#64;</span>pyOpenRPA<span>&#46;</span>ru</a></p></li> <li><p>Почта: <a class="reference external" href="mailto:Support&#37;&#52;&#48;pyOpenRPA&#46;ru">Support<span>&#64;</span>pyOpenRPA<span>&#46;</span>ru</a></p></li>
<li><p>Телеграм: &#64;pyOpenRPA_support</p></li> <li><p>Телеграм: &#64;pyOpenRPA_support :: <a class="reference external" href="https://t.me/pyOpenRPA_support">Написать</a></p></li>
<li><p>Портал: <a class="reference external" href="https://pyopenrpa.ru/">https://pyopenrpa.ru/</a></p></li> <li><p>Портал: <a class="reference external" href="https://pyopenrpa.ru/">https://pyopenrpa.ru/</a></p></li>
<li><p>Телеграм канал: &#64;pyOpenRPA_support</p></li> <li><p>Телеграм канал: &#64;pyOpenRPA :: <a class="reference external" href="https://t.me/pyOpenRPA">Присоединиться</a></p></li>
</ul> </ul>
</div> </div>
<div class="section" id="id3"> <div class="section" id="id8">
<h2>Иван Маслов (Основатель &amp; генеральный директор)<a class="headerlink" href="#id3" title="Ссылка на этот заголовок"></a></h2> <h2>Иван Маслов (генеральный директор ООО «ОПЕН РПА»)<a class="headerlink" href="#id8" title="Ссылка на этот заголовок"></a></h2>
<ul class="simple"> <ul class="simple">
<li><p>Телефон/WhatsApp: +7 (906) 722-39-25</p></li> <li><p>Телефон/WhatsApp: +7 (906) 722-39-25</p></li>
<li><p>Почта: <a class="reference external" href="mailto:Ivan&#46;Maslov&#37;&#52;&#48;pyOpenRPA&#46;ru">Ivan<span>&#46;</span>Maslov<span>&#64;</span>pyOpenRPA<span>&#46;</span>ru</a></p></li> <li><p>Почта: <a class="reference external" href="mailto:Ivan&#46;Maslov&#37;&#52;&#48;pyOpenRPA&#46;ru">Ivan<span>&#46;</span>Maslov<span>&#64;</span>pyOpenRPA<span>&#46;</span>ru</a></p></li>
<li><p>Телеграм: &#64;IvanMaslov</p></li> <li><p>Телеграм: &#64;IvanMaslov :: <a class="reference external" href="https://t.me/IvanMaslov">Написать</a></p></li>
<li><p>Портал: <a class="reference external" href="https://pyopenrpa.ru/">https://pyopenrpa.ru/</a></p></li> <li><p>Портал: <a class="reference external" href="https://pyopenrpa.ru/">https://pyopenrpa.ru/</a></p></li>
<li><p>Телеграм канал: &#64;pyOpenRPA_support</p></li> <li><p>Телеграм канал: &#64;pyOpenRPA :: <a class="reference external" href="https://t.me/pyOpenRPA">Присоединиться</a></p></li>
</ul> </ul>
</div> </div>
<div class="section" id="id4"> <div class="section" id="id11">
<h2>Используемые сторонние компоненты (лицензионная чистота)<a class="headerlink" href="#id4" title="Ссылка на этот заголовок"></a></h2> <h2>Используемые сторонние компоненты (лицензионная чистота)<a class="headerlink" href="#id11" title="Ссылка на этот заголовок"></a></h2>
<ul class="simple">
<li><p>WinPython, v3.7.1 32-bit &amp; 64-bit, лицензия MIT <a class="reference external" href="https://github.com/winpython/winpython">https://github.com/winpython/winpython</a></p></li>
<li><p>Selenium, v3.141.0, лицензия Apache 2.0 <a class="reference external" href="https://github.com/SeleniumHQ/selenium/blob/trunk/LICENSE">https://github.com/SeleniumHQ/selenium/blob/trunk/LICENSE</a></p></li>
<li><p>pywinauto, v0.6.5, лицензия BSD 3-Clause <a class="reference external" href="https://github.com/pywinauto/pywinauto">https://github.com/pywinauto/pywinauto</a></p></li>
<li><p>Semantic UI, v2.4.1, лицензия MIT <a class="reference external" href="https://github.com/Semantic-Org/Semantic-UI">https://github.com/Semantic-Org/Semantic-UI</a></p></li>
<li><p>PyAutoGUI, v0.9.44, лицензия BSD 3-Clause <a class="reference external" href="https://github.com/asweigart/pyautogui">https://github.com/asweigart/pyautogui</a></p></li>
<li><p>keyboard, v0.13.3, лицензия MIT <a class="reference external" href="https://github.com/boppreh/keyboard">https://github.com/boppreh/keyboard</a>)</p></li>
<li><p>pywin32 (win32api), v228, Python Software Foundation лицензия (PSF) <a class="reference external" href="https://github.com/mhammond/pywin32">https://github.com/mhammond/pywin32</a></p></li>
<li><p>WMI, v1.4.9, лицензия MIT, <a class="reference external" href="http://www.opensource.org/licenses/mit-license.php">http://www.opensource.org/licenses/mit-license.php</a></p></li>
<li><p>psutil, v5.6.2, лицензия BSD 3-Clause <a class="reference external" href="https://github.com/giampaolo/psutil/blob/master/LICENSE">https://github.com/giampaolo/psutil/blob/master/LICENSE</a></p></li>
<li><p>Pillow PIL, v6.0.0, лицензия HPND <a class="reference external" href="https://github.com/python-pillow/Pillow/blob/main/LICENSE">https://github.com/python-pillow/Pillow/blob/main/LICENSE</a></p></li>
<li><p>requests, v2.22.0, лицензия Apache 2.0 <a class="reference external" href="https://github.com/psf/requests/blob/main/LICENSE">https://github.com/psf/requests/blob/main/LICENSE</a></p></li>
<li><p>JsRender, v1.0.2, лицензия MIT <a class="reference external" href="https://github.com/BorisMoore/jsrender/blob/master/MIT-LICENSE.txt">https://github.com/BorisMoore/jsrender/blob/master/MIT-LICENSE.txt</a></p></li>
<li><p>Handlebars, v4.1.2, лицензия MIT, <a class="reference external" href="https://github.com/handlebars-lang/handlebars.js/blob/master/LICENSE">https://github.com/handlebars-lang/handlebars.js/blob/master/LICENSE</a></p></li>
<li><p>jinja2, v2.11.2, лицензия BSD 3-Clause, <a class="reference external" href="https://github.com/pallets/jinja/blob/main/LICENSE.rst">https://github.com/pallets/jinja/blob/main/LICENSE.rst</a></p></li>
<li><p>JupiterNotebook v6.1.4, лицензия BSD 3-Clause, <a class="reference external" href="https://github.com/jupyter/notebook/blob/main/LICENSE">https://github.com/jupyter/notebook/blob/main/LICENSE</a></p></li>
<li><p>schedule, v1.1.0, лицензия MIT, <a class="reference external" href="https://github.com/dbader/schedule/blob/master/LICENSE.txt">https://github.com/dbader/schedule/blob/master/LICENSE.txt</a></p></li>
</ul>
</div>
<div class="section" id="id12">
<h2>Быстрая навигация<a class="headerlink" href="#id12" title="Ссылка на этот заголовок"></a></h2>
<ul class="simple"> <ul class="simple">
<li><p>WinPython, v3.7.1 32-bit &amp; 64-bit, лицензия MIT (<a class="reference external" href="https://github.com/winpython/winpython">https://github.com/winpython/winpython</a>)</p></li> <li><p><a class="reference external" href="https://t.me/pyOpenRPA">Сообщество pyOpenRPA (telegram)</a></p></li>
<li><p>Selenium, v…, лицензия Apache 2.0 (<a class="reference external" href="https://github.com/SeleniumHQ/selenium/blob/trunk/LICENSE">https://github.com/SeleniumHQ/selenium/blob/trunk/LICENSE</a>)</p></li> <li><p><a class="reference external" href="https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24">Сообщество pyOpenRPA (tenchat)</a></p></li>
<li><p>pywinauto, v0.6.5, лицензия BSD 3-Clause (<a class="reference external" href="https://github.com/pywinauto/pywinauto">https://github.com/pywinauto/pywinauto</a>)</p></li> <li><p><a class="reference external" href="https://vk.com/pyopenrpa">Сообщество pyOpenRPA (вконтакте)</a></p></li>
<li><p>Semantic UI, v…, лицензия MIT (<a class="reference external" href="https://github.com/Semantic-Org/Semantic-UI">https://github.com/Semantic-Org/Semantic-UI</a>)</p></li> <li><p><a class="reference external" href="https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf">Презентация pyOpenRPA</a></p></li>
<li><p>PyAutoGUI, v…, лицензия BSD 3-Clause (<a class="reference external" href="https://github.com/asweigart/pyautogui">https://github.com/asweigart/pyautogui</a>)</p></li> <li><p><a class="reference external" href="https://pyopenrpa.ru">Портал pyOpenRPA</a></p></li>
<li><p>keyboard, v…, лицензия MIT (<a class="reference external" href="https://github.com/boppreh/keyboard">https://github.com/boppreh/keyboard</a>)</p></li> <li><p><a class="reference external" href="https://gitlab.com/UnicodeLabs/OpenRPA">Репозиторий pyOpenRPA</a></p></li>
<li><p>pywin32 (win32api), v…, Python Software Foundation лицензия (PSF) (<a class="reference external" href="https://github.com/mhammond/pywin32">https://github.com/mhammond/pywin32</a>)</p></li>
<li><p>WMI, v…, лицензия MIT, (<a class="reference external" href="http://www.opensource.org/licenses/mit-license.php">http://www.opensource.org/licenses/mit-license.php</a>)</p></li>
<li><p>psutil, v…, лицензия BSD 3-Clause (<a class="reference external" href="https://github.com/giampaolo/psutil/blob/master/LICENSE">https://github.com/giampaolo/psutil/blob/master/LICENSE</a>)</p></li>
<li><p>Pillow PIL, v…, лицензия HPND (<a class="reference external" href="https://github.com/python-pillow/Pillow/blob/main/LICENSE">https://github.com/python-pillow/Pillow/blob/main/LICENSE</a>)</p></li>
<li><p>requests, v…, лицензия Apache 2.0 (<a class="reference external" href="https://github.com/psf/requests/blob/main/LICENSE">https://github.com/psf/requests/blob/main/LICENSE</a>)</p></li>
<li><p>JsRender, v…, лицензия MIT (<a class="reference external" href="https://github.com/BorisMoore/jsrender/blob/master/MIT-LICENSE.txt">https://github.com/BorisMoore/jsrender/blob/master/MIT-LICENSE.txt</a>)</p></li>
<li><p>Handlebars, v…, лицензия MIT, (<a class="reference external" href="https://github.com/handlebars-lang/handlebars.js/blob/master/LICENSE">https://github.com/handlebars-lang/handlebars.js/blob/master/LICENSE</a>)</p></li>
<li><p>jinja2, v…, лицензия BSD 3-Clause, (<a class="reference external" href="https://github.com/pallets/jinja/blob/main/LICENSE.rst">https://github.com/pallets/jinja/blob/main/LICENSE.rst</a>)</p></li>
</ul> </ul>
<p> .. v1.2.12 replace:: v1.2.12 <p> .. v1.2.12 replace:: v1.2.12</p>
.. <a href="#id5"><span class="problematic" id="id6">|author|</span></a> replace:: Ivan Maslov &lt;<a class="reference external" href="mailto:ivan&#46;maslov&#37;&#52;&#48;unicodelabs&#46;ru">ivan<span>&#46;</span>maslov<span>&#64;</span>unicodelabs<span>&#46;</span>ru</a>&gt;</p>
<p></p> <p></p>
</div> </div>
</div> </div>

@ -7,7 +7,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>2. Defs &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title> <title>2. Функции &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title>
@ -41,8 +41,8 @@
<link rel="index" title="Алфавитный указатель" href="../genindex.html" /> <link rel="index" title="Алфавитный указатель" href="../genindex.html" />
<link rel="search" title="Поиск" href="../search.html" /> <link rel="search" title="Поиск" href="../search.html" />
<link rel="next" title="2. Defs StopSafe" href="../Tools/02_Defs.html" /> <link rel="next" title="2. Функции StopSafe" href="../Tools/02_Defs.html" />
<link rel="prev" title="6. Defs Managers" href="../Orchestrator/06_Defs%20Managers.html" /> <link rel="prev" title="5. Права доступа пользователей UAC" href="../Orchestrator/05_UAC.html" />
</head> </head>
<body class="wy-body-for-nav"> <body class="wy-body-for-nav">
@ -91,20 +91,18 @@
<ul> <ul>
<li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li> <li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li>
<li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li> <li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li>
<li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Права &amp; Контакты</a></li> <li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Лицензия &amp; Контакты</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Robot/01_Robot.html">1. Описание</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/01_Robot.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/02_Defs.html">2. Функции</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/02_uidesktop.html">2. Функции UIDesktop</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/02_uidesktop.html">2. UIDesktop</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/03_uiweb.html">3. Функции UIWeb</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/03_uiweb.html">3. UIWeb</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/04_keyboard.html">4. Функции Keyboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/04_keyboard.html">4. Keyboard</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/05_clipboard.html">5. Функции Clipboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/05_clipboard.html">5. Clipboard</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/06_mouse.html">6. Функции Mouse</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/06_mouse.html">6. Mouse</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/07_image.html">7. Функции Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/07_image.html">7. Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/08_HowToUse.html">8. Как использовать?</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/08_HowToUse.html">8. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/09_Dependencies.html">9. Зависимости</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p>
<ul> <ul>
@ -113,24 +111,22 @@
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Description</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Функции</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. gSettings Template</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. Настройки GSettings (шаблон)</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. How to use</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. UAC - User Access Control</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. Права доступа пользователей UAC</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/06_Defs%20Managers.html">6. Defs Managers</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p>
<ul class="current"> <ul class="current">
<li class="toctree-l1 current"><a class="current reference internal" href="#">2. Defs</a><ul> <li class="toctree-l1 current"><a class="current reference internal" href="#">2. Функции</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#module-pyOpenRPA.Agent.__Agent__">pyOpenRPA.Agent.__Agent__</a></li> <li class="toctree-l2"><a class="reference internal" href="#module-pyOpenRPA.Agent.__Agent__">pyOpenRPA.Agent.__Agent__</a></li>
<li class="toctree-l2"><a class="reference internal" href="#references">References</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>
<p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p> <p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Defs StopSafe</a></li> <li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Функции StopSafe</a></li>
</ul> </ul>
@ -179,7 +175,7 @@
<li><a href="../index.html" class="icon icon-home"></a> &raquo;</li> <li><a href="../index.html" class="icon icon-home"></a> &raquo;</li>
<li>2. Defs</li> <li>2. Функции</li>
<li class="wy-breadcrumbs-aside"> <li class="wy-breadcrumbs-aside">
@ -198,8 +194,8 @@
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article"> <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody"> <div itemprop="articleBody">
<div class="section" id="defs"> <div class="section" id="id1">
<h1>2. Defs<a class="headerlink" href="#defs" title="Ссылка на этот заголовок"></a></h1> <h1>2. Функции<a class="headerlink" href="#id1" title="Ссылка на этот заголовок"></a></h1>
<div class="section" id="module-pyOpenRPA.Agent.__Agent__"> <div class="section" id="module-pyOpenRPA.Agent.__Agent__">
<span id="pyopenrpa-agent-agent"></span><h2>pyOpenRPA.Agent.__Agent__<a class="headerlink" href="#module-pyOpenRPA.Agent.__Agent__" title="Ссылка на этот заголовок"></a></h2> <span id="pyopenrpa-agent-agent"></span><h2>pyOpenRPA.Agent.__Agent__<a class="headerlink" href="#module-pyOpenRPA.Agent.__Agent__" title="Ссылка на этот заголовок"></a></h2>
<p><strong>Functions:</strong></p> <p><strong>Functions:</strong></p>
@ -350,17 +346,7 @@
</dl> </dl>
</dd></dl> </dd></dl>
</div> <p> .. v1.2.12 replace:: v1.2.12</p>
<div class="section" id="references">
<h2>References<a class="headerlink" href="#references" title="Ссылка на этот заголовок"></a></h2>
<p><a class="reference external" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> <a class="footnote-reference brackets" href="#id3" id="id4">1</a></p>
<dl class="footnote brackets">
<dt class="label" id="id3"><span class="brackets"><a class="fn-backref" href="#id4">1</a></span></dt>
<dd><p><a class="reference external" href="http://docutils.sourceforge.net/rst.html">http://docutils.sourceforge.net/rst.html</a></p>
</dd>
</dl>
<p> .. v1.2.12 replace:: v1.2.12
.. <a href="#id1"><span class="problematic" id="id2">|author|</span></a> replace:: Ivan Maslov &lt;<a class="reference external" href="mailto:ivan&#46;maslov&#37;&#52;&#48;unicodelabs&#46;ru">ivan<span>&#46;</span>maslov<span>&#64;</span>unicodelabs<span>&#46;</span>ru</a>&gt;</p>
<p></p> <p></p>
</div> </div>
</div> </div>
@ -371,8 +357,8 @@
</div> </div>
<footer> <footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="../Tools/02_Defs.html" class="btn btn-neutral float-right" title="2. Defs StopSafe" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a> <a href="../Tools/02_Defs.html" class="btn btn-neutral float-right" title="2. Функции StopSafe" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="../Orchestrator/06_Defs%20Managers.html" class="btn btn-neutral float-left" title="6. Defs Managers" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a> <a href="../Orchestrator/05_UAC.html" class="btn btn-neutral float-left" title="5. Права доступа пользователей UAC" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a>
</div> </div>
<hr/> <hr/>

@ -7,7 +7,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>1. Description &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title> <title>1. Описание &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title>
@ -41,7 +41,7 @@
<link rel="index" title="Алфавитный указатель" href="../genindex.html" /> <link rel="index" title="Алфавитный указатель" href="../genindex.html" />
<link rel="search" title="Поиск" href="../search.html" /> <link rel="search" title="Поиск" href="../search.html" />
<link rel="next" title="2. Defs" href="02_Defs.html" /> <link rel="next" title="2. Функции" href="02_Defs.html" />
<link rel="prev" title="2. Как использовать?" href="../Studio/02_HowToUse.html" /> <link rel="prev" title="2. Как использовать?" href="../Studio/02_HowToUse.html" />
</head> </head>
@ -91,20 +91,18 @@
<ul> <ul>
<li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li> <li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li>
<li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li> <li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li>
<li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Права &amp; Контакты</a></li> <li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Лицензия &amp; Контакты</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Robot/01_Robot.html">1. Описание</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/01_Robot.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/02_Defs.html">2. Функции</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/02_uidesktop.html">2. Функции UIDesktop</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/02_uidesktop.html">2. UIDesktop</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/03_uiweb.html">3. Функции UIWeb</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/03_uiweb.html">3. UIWeb</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/04_keyboard.html">4. Функции Keyboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/04_keyboard.html">4. Keyboard</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/05_clipboard.html">5. Функции Clipboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/05_clipboard.html">5. Clipboard</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/06_mouse.html">6. Функции Mouse</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/06_mouse.html">6. Mouse</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/07_image.html">7. Функции Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/07_image.html">7. Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/08_HowToUse.html">8. Как использовать?</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/08_HowToUse.html">8. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/09_Dependencies.html">9. Зависимости</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p>
<ul> <ul>
@ -113,27 +111,25 @@
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p>
<ul class="current"> <ul class="current">
<li class="toctree-l1 current"><a class="current reference internal" href="#">1. Description</a><ul> <li class="toctree-l1 current"><a class="current reference internal" href="#">1. Описание</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#global-settings-dict-concept">Global settings dict concept</a></li> <li class="toctree-l2"><a class="reference internal" href="#id2">Общее</a></li>
<li class="toctree-l2"><a class="reference internal" href="#orchestrator-how-to-configure">Orchestrator how to configure</a></li> <li class="toctree-l2"><a class="reference internal" href="#gsettings">Концепция единого глобального словаря настроек (GSettings)</a></li>
<li class="toctree-l2"><a class="reference internal" href="#orchestrator-architecture">Orchestrator architecture</a></li> <li class="toctree-l2"><a class="reference internal" href="#id3">Архитектура</a></li>
<li class="toctree-l2"><a class="reference internal" href="#component-processor">Component Processor</a></li> <li class="toctree-l2"><a class="reference internal" href="#id4">Быстрая навигация</a></li>
<li class="toctree-l2"><a class="reference internal" href="#references">References</a></li>
</ul> </ul>
</li> </li>
<li class="toctree-l1"><a class="reference internal" href="02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="02_Defs.html">2. Функции</a></li>
<li class="toctree-l1"><a class="reference internal" href="03_gSettingsTemplate.html">3. gSettings Template</a></li> <li class="toctree-l1"><a class="reference internal" href="03_gSettingsTemplate.html">3. Настройки GSettings (шаблон)</a></li>
<li class="toctree-l1"><a class="reference internal" href="04_HowToUse.html">4. How to use</a></li> <li class="toctree-l1"><a class="reference internal" href="04_HowToUse.html">4. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="05_UAC.html">5. UAC - User Access Control</a></li> <li class="toctree-l1"><a class="reference internal" href="05_UAC.html">5. Права доступа пользователей UAC</a></li>
<li class="toctree-l1"><a class="reference internal" href="06_Defs%20Managers.html">6. Defs Managers</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Функции</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p> <p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Defs StopSafe</a></li> <li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Функции StopSafe</a></li>
</ul> </ul>
@ -182,7 +178,7 @@
<li><a href="../index.html" class="icon icon-home"></a> &raquo;</li> <li><a href="../index.html" class="icon icon-home"></a> &raquo;</li>
<li>1. Description</li> <li>1. Описание</li>
<li class="wy-breadcrumbs-aside"> <li class="wy-breadcrumbs-aside">
@ -201,77 +197,61 @@
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article"> <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody"> <div itemprop="articleBody">
<div class="section" id="description"> <div class="section" id="module-orchestrator-dscription">
<h1>1. Description<a class="headerlink" href="#description" title="Ссылка на этот заголовок"></a></h1> <span id="id1"></span><h1>1. Описание<a class="headerlink" href="#module-orchestrator-dscription" title="Ссылка на этот заголовок"></a></h1>
<p>pyOpenRPA Orchestrator is the executable process.</p> <div class="section" id="id2">
<p>The features of the orchestrator is: <h2>Общее<a class="headerlink" href="#id2" title="Ссылка на этот заголовок"></a></h2>
- Centralized/decentralized user control interface (applicable and for business users and for technical users). Web based, support desktop, tablet, phone. <p>Модуль оркестратор - это координирующее звено, которое обеспечивает бесперебойную работа массива роботов. Этот массив может состоять как из одного так и из тысячи роботов RPA.</p>
- Automatized robots control (customized algorithms, robots scheduling) <p><strong>Основные возможности</strong></p>
- Source code mega flexibility: Light Orchestrator architecture is good for own customization</p> <ul class="simple">
<div class="section" id="global-settings-dict-concept"> <li><p>Запуск / пауза / безопасная остановка / принудительная остановка робота</p></li>
<h2>Global settings dict concept<a class="headerlink" href="#global-settings-dict-concept" title="Ссылка на этот заголовок"></a></h2> <li><p>Интеллектуальное расписание</p></li>
<p>pyOpenRPA project is complex tool which consist of several executable modules such as Robot, Orchestrator, Studio,</p> <li><p>Просмотр состояния графических сессий роботов через панель управления</p></li>
<p>Because of module compexity, we use 1 init arg - inGSettings <li><p>Удаленное администрирование сессий оркестратора и робота</p></li>
inGSettings is a complex dictionary which has all reqired parameters for the module execution.</p> <li><p>Среда отладки функциональности через панель управления оркестратора</p></li>
<p>The description of the GSettings you can find in executable module details.</p> <li><p>Консолидированное хранилище логов, доступное для просмотра через панель управления</p></li>
</div> <li><p>Ролевая модель разграничения доступа</p></li>
<div class="section" id="orchestrator-how-to-configure"> <li><p>Функциональность очередей для координации роботов</p></li>
<h2>Orchestrator how to configure<a class="headerlink" href="#orchestrator-how-to-configure" title="Ссылка на этот заголовок"></a></h2> </ul>
<p>To init pyOpenRPA Orchestrator instance use script:</p>
<p>from pyOpenRPA import Orchestrator # Import orchestrator main
gSettings = SettingsTemplate.Create(inModeStr=»BASIC») # Create GSettings with basic configuration
Orchestrator.Orchestrator(inGSettings=gSettings) # Call the orchestrator def</p>
<p>gSettings structure</p>
</div> </div>
<div class="section" id="orchestrator-architecture"> <div class="section" id="gsettings">
<h2>Orchestrator architecture<a class="headerlink" href="#orchestrator-architecture" title="Ссылка на этот заголовок"></a></h2> <h2>Концепция единого глобального словаря настроек (GSettings)<a class="headerlink" href="#gsettings" title="Ссылка на этот заголовок"></a></h2>
<p>Orchestrator has several source code components: <p>pyOpenRPA - это сложное решение, которое направлено на упрощение жизни пользователей и разработчиков роботов.</p>
- User/robot activity consolidated queue single thread (Processor) <p>Для того, чтобы предлагать рынку гибкое, адаптивное и надежное решение, одним из архитектурных решений был выбран подхъод хранения !ВСЕЙ! конфигурационной информации в едином словаре, который мы называем GSettings.</p>
- User/robot activity asynchonus many threads (Processor) <p>GSettings - это многоуровневая и иерархичная структура, которая позволяет произвести широкую кастомизацию под свои нужды, и в то же время быть открытой к внедрению новых возможностей.</p>
- Scheduler single thread (main) <p>Ознакомиться со структурой GSettings можно по ссылке: <a class="reference internal" href="03_gSettingsTemplate.html#module-orchestrator-gsettings"><span class="std std-ref">3. Настройки GSettings (шаблон)</span></a></p>
- RDP keep active many thread <p>Мы не рекомендуем вносить изменения напрямую в GSettings, хоть мы и оставляем такую возможность. Для корректировки функциональности Вы можете воспользоваться соответствующей функцией в модуле Оркестратора (см. здесь: <a class="reference internal" href="02_Defs.html#module-orchestrator-defs"><span class="std std-ref">2. Функции</span></a>)</p>
- Autocleaner single thread <p>Используя специальные функции модуля Оркестратора вы существенно увеличиваете шансы бесшовного перехода на новые версии pyOpenRPA, если вам это потребуется.</p>
- GUI keep active single thread
- HTTP web server single thread (create user socket threads)
-</p>
<p>Below you can find more information about all of the component.</p>
</div> </div>
<div class="section" id="component-processor"> <div class="section" id="id3">
<h2>Component Processor<a class="headerlink" href="#component-processor" title="Ссылка на этот заголовок"></a></h2> <h2>Архитектура<a class="headerlink" href="#id3" title="Ссылка на этот заголовок"></a></h2>
<p>Sync - Append activity list to consolidated processor queue. Execution goes sequency by the activity list order</p> <p>Оркестратор состоит из следующих основных потоков:</p>
<p>Async - Create New thread to execute the activity list</p>
<ul class="simple"> <ul class="simple">
<li><p>Activity list</p></li> <li><p>Процессорная очередь активностей (ActivityItem) (Processor)</p></li>
<li><p>Функциональность асинхронного исполнения активностей (ActivityItem) (Processor)</p></li>
<li><p>Поток интеллектуального расписания (main)</p></li>
<li><p>Поток контроля активности RDP сессий</p></li>
<li><p>Поток сбора мусорных данных</p></li>
<li><p>Поток контроля графической сессии на учетной записи, где работает Оркестратор</p></li>
<li><p>Поток веб-сервера Оркестратора</p></li>
</ul> </ul>
<p>List of the activity item</p> <p>Ознакомиться с возможностями и функциями оркестратора можно по ссылке: <a class="reference internal" href="02_Defs.html#module-orchestrator-defs"><span class="std std-ref">2. Функции</span></a></p>
<p>Дорогие коллеги!</p>
<p>Мы знаем, что с pyOpenRPA вы сможете существенно улучшить качество вашего бизнеса. Платформа роботизации pyOpenRPA - это разработка, которая дает возможность делать виртуальных сотрудников (программных роботов RPA) выгодными, начиная от эффекта всего в <strong>10 тыс. руб.</strong> И управлять ими будете только Вы!</p>
<p>Если у вас останутся вопросы, то вы всегда можете обратиться в центр поддержки клиентов pyOpenRPA. Контакты: <a class="reference internal" href="../03_Copyrights_Contacts.html#copyrights-contacts"><span class="std std-ref">2. Лицензия &amp; Контакты</span></a></p>
<p>pyOpenRPA - роботы помогут!</p>
</div>
<div class="section" id="id4">
<h2>Быстрая навигация<a class="headerlink" href="#id4" title="Ссылка на этот заголовок"></a></h2>
<ul class="simple"> <ul class="simple">
<li><p>Activity item</p></li> <li><p><a class="reference external" href="https://t.me/pyOpenRPA">Сообщество pyOpenRPA (telegram)</a></p></li>
<li><p><a class="reference external" href="https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24">Сообщество pyOpenRPA (tenchat)</a></p></li>
<li><p><a class="reference external" href="https://vk.com/pyopenrpa">Сообщество pyOpenRPA (вконтакте)</a></p></li>
<li><p><a class="reference external" href="https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf">Презентация pyOpenRPA</a></p></li>
<li><p><a class="reference external" href="https://pyopenrpa.ru">Портал pyOpenRPA</a></p></li>
<li><p><a class="reference external" href="https://gitlab.com/UnicodeLabs/OpenRPA">Репозиторий pyOpenRPA</a></p></li>
</ul> </ul>
<p>Activity item is universal mechanism to execute different algorythms from any sources. <p> .. v1.2.12 replace:: v1.2.12</p>
The core feature of the Activity is to call python defs with args and kwargs.
If you need to init do some activity you can write some python def, then create Activity item with current def.
ATTENTION: In some cases (such as web transmition), when you cant transmit python def as object you can use symbolic names for python defs. It is apply you to init all of you want from the web UI.</p>
<p>?Why i cant transmit python def from the web
Because the WEB space is not the Python executable space. Interaction between it spaces create by JSON protocol. So, we know than JSON apply int, float, str, bool, None, list, dict - that is all.</p>
<div class="admonition note">
<p class="admonition-title">Примечание</p>
<p>Example
{</p>
<blockquote>
<div><p>«Def»:»DefAliasTest», # def link or def alias (look gSettings[«Processor»][«AliasDefDict»])
«ArgList»:[1,2,3], # Args list
«ArgDict»:{«ttt»:1,»222»:2,»dsd»:3}, # Args dictionary
«ArgGSettings»: None # Name of GSettings attribute: str (ArgDict) or index (for ArgList)
«ArgLogger»: None # Name of GSettings attribute: str (ArgDict) or index (for ArgList)</p>
</div></blockquote>
<p>}# Pay attention! Do not left comma symbol after the end of the dict - it can be interpretated like a turple..</p>
</div>
</div>
<div class="section" id="references">
<h2>References<a class="headerlink" href="#references" title="Ссылка на этот заголовок"></a></h2>
<p><a href="#id3"><span class="problematic" id="id4">`Python-sphinx`_</span></a></p>
<p> .. v1.2.12 replace:: v1.2.12
.. <a href="#id1"><span class="problematic" id="id2">|author|</span></a> replace:: Ivan Maslov &lt;<a class="reference external" href="mailto:ivan&#46;maslov&#37;&#52;&#48;unicodelabs&#46;ru">ivan<span>&#46;</span>maslov<span>&#64;</span>unicodelabs<span>&#46;</span>ru</a>&gt;</p>
<p></p> <p></p>
</div> </div>
</div> </div>
@ -282,7 +262,7 @@ Because the WEB space is not the Python executable space. Interaction between it
</div> </div>
<footer> <footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="02_Defs.html" class="btn btn-neutral float-right" title="2. Defs" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a> <a href="02_Defs.html" class="btn btn-neutral float-right" title="2. Функции" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="../Studio/02_HowToUse.html" class="btn btn-neutral float-left" title="2. Как использовать?" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a> <a href="../Studio/02_HowToUse.html" class="btn btn-neutral float-left" title="2. Как использовать?" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a>
</div> </div>

File diff suppressed because it is too large Load Diff

@ -7,7 +7,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>3. gSettings Template &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title> <title>3. Настройки GSettings (шаблон) &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title>
@ -41,8 +41,8 @@
<link rel="index" title="Алфавитный указатель" href="../genindex.html" /> <link rel="index" title="Алфавитный указатель" href="../genindex.html" />
<link rel="search" title="Поиск" href="../search.html" /> <link rel="search" title="Поиск" href="../search.html" />
<link rel="next" title="4. How to use" href="04_HowToUse.html" /> <link rel="next" title="4. Как использовать?" href="04_HowToUse.html" />
<link rel="prev" title="2. Defs" href="02_Defs.html" /> <link rel="prev" title="2. Функции" href="02_Defs.html" />
</head> </head>
<body class="wy-body-for-nav"> <body class="wy-body-for-nav">
@ -91,20 +91,18 @@
<ul> <ul>
<li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li> <li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li>
<li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li> <li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li>
<li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Права &amp; Контакты</a></li> <li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Лицензия &amp; Контакты</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Robot/01_Robot.html">1. Описание</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/01_Robot.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/02_Defs.html">2. Функции</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/02_uidesktop.html">2. Функции UIDesktop</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/02_uidesktop.html">2. UIDesktop</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/03_uiweb.html">3. Функции UIWeb</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/03_uiweb.html">3. UIWeb</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/04_keyboard.html">4. Функции Keyboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/04_keyboard.html">4. Keyboard</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/05_clipboard.html">5. Функции Clipboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/05_clipboard.html">5. Clipboard</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/06_mouse.html">6. Функции Mouse</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/06_mouse.html">6. Mouse</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/07_image.html">7. Функции Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/07_image.html">7. Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/08_HowToUse.html">8. Как использовать?</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/08_HowToUse.html">8. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/09_Dependencies.html">9. Зависимости</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p>
<ul> <ul>
@ -113,20 +111,24 @@
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p>
<ul class="current"> <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="01_Orchestrator.html">1. Description</a></li> <li class="toctree-l1"><a class="reference internal" href="01_Orchestrator.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="02_Defs.html">2. Функции</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">3. gSettings Template</a></li> <li class="toctree-l1 current"><a class="current reference internal" href="#">3. Настройки GSettings (шаблон)</a><ul>
<li class="toctree-l1"><a class="reference internal" href="04_HowToUse.html">4. How to use</a></li> <li class="toctree-l2"><a class="reference internal" href="#id1">Общее</a></li>
<li class="toctree-l1"><a class="reference internal" href="05_UAC.html">5. UAC - User Access Control</a></li> <li class="toctree-l2"><a class="reference internal" href="#id2">Структура</a></li>
<li class="toctree-l1"><a class="reference internal" href="06_Defs%20Managers.html">6. Defs Managers</a></li> <li class="toctree-l2"><a class="reference internal" href="#id3">Быстрая навигация</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="04_HowToUse.html">4. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="05_UAC.html">5. Права доступа пользователей UAC</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Функции</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p> <p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Defs StopSafe</a></li> <li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Функции StopSafe</a></li>
</ul> </ul>
@ -175,7 +177,7 @@
<li><a href="../index.html" class="icon icon-home"></a> &raquo;</li> <li><a href="../index.html" class="icon icon-home"></a> &raquo;</li>
<li>3. gSettings Template</li> <li>3. Настройки GSettings (шаблон)</li>
<li class="wy-breadcrumbs-aside"> <li class="wy-breadcrumbs-aside">
@ -194,9 +196,14 @@
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article"> <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody"> <div itemprop="articleBody">
<div class="section" id="gsettings-template"> <div class="section" id="gsettings">
<h1>3. gSettings Template<a class="headerlink" href="#gsettings-template" title="Ссылка на этот заголовок"></a></h1> <span id="module-orchestrator-gsettings"></span><h1>3. Настройки GSettings (шаблон)<a class="headerlink" href="#gsettings" title="Ссылка на этот заголовок"></a></h1>
<p>gSettings structure</p> <div class="section" id="id1">
<h2>Общее<a class="headerlink" href="#id1" title="Ссылка на этот заголовок"></a></h2>
<p>Ниже представлена структура единого глобального словаря настроек GSettings</p>
</div>
<div class="section" id="id2">
<h2>Структура<a class="headerlink" href="#id2" title="Ссылка на этот заголовок"></a></h2>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">os</span><span class="o">,</span> <span class="nn">logging</span><span class="o">,</span> <span class="nn">datetime</span><span class="o">,</span> <span class="nn">sys</span> <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">os</span><span class="o">,</span> <span class="nn">logging</span><span class="o">,</span> <span class="nn">datetime</span><span class="o">,</span> <span class="nn">sys</span>
<span class="kn">import</span> <span class="nn">schedule</span> <span class="c1"># https://schedule.readthedocs.io/en/stable/examples.html</span> <span class="kn">import</span> <span class="nn">schedule</span> <span class="c1"># https://schedule.readthedocs.io/en/stable/examples.html</span>
@ -562,9 +569,20 @@
<span class="k">return</span> <span class="n">lResult</span> <span class="c1"># return the result dict</span> <span class="k">return</span> <span class="n">lResult</span> <span class="c1"># return the result dict</span>
</pre></div> </pre></div>
</div> </div>
<p> .. v1.2.12 replace:: v1.2.12 </div>
.. <a href="#id1"><span class="problematic" id="id2">|author|</span></a> replace:: Ivan Maslov &lt;<a class="reference external" href="mailto:ivan&#46;maslov&#37;&#52;&#48;unicodelabs&#46;ru">ivan<span>&#46;</span>maslov<span>&#64;</span>unicodelabs<span>&#46;</span>ru</a>&gt;</p> <div class="section" id="id3">
<h2>Быстрая навигация<a class="headerlink" href="#id3" title="Ссылка на этот заголовок"></a></h2>
<ul class="simple">
<li><p><a class="reference external" href="https://t.me/pyOpenRPA">Сообщество pyOpenRPA (telegram)</a></p></li>
<li><p><a class="reference external" href="https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24">Сообщество pyOpenRPA (tenchat)</a></p></li>
<li><p><a class="reference external" href="https://vk.com/pyopenrpa">Сообщество pyOpenRPA (вконтакте)</a></p></li>
<li><p><a class="reference external" href="https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf">Презентация pyOpenRPA</a></p></li>
<li><p><a class="reference external" href="https://pyopenrpa.ru">Портал pyOpenRPA</a></p></li>
<li><p><a class="reference external" href="https://gitlab.com/UnicodeLabs/OpenRPA">Репозиторий pyOpenRPA</a></p></li>
</ul>
<p> .. v1.2.12 replace:: v1.2.12</p>
<p></p> <p></p>
</div>
</div> </div>
@ -573,8 +591,8 @@
</div> </div>
<footer> <footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="04_HowToUse.html" class="btn btn-neutral float-right" title="4. How to use" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a> <a href="04_HowToUse.html" class="btn btn-neutral float-right" title="4. Как использовать?" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="02_Defs.html" class="btn btn-neutral float-left" title="2. Defs" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a> <a href="02_Defs.html" class="btn btn-neutral float-left" title="2. Функции" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a>
</div> </div>
<hr/> <hr/>

@ -7,7 +7,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>4. How to use &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title> <title>4. Как использовать? &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title>
@ -41,8 +41,8 @@
<link rel="index" title="Алфавитный указатель" href="../genindex.html" /> <link rel="index" title="Алфавитный указатель" href="../genindex.html" />
<link rel="search" title="Поиск" href="../search.html" /> <link rel="search" title="Поиск" href="../search.html" />
<link rel="next" title="5. UAC - User Access Control" href="05_UAC.html" /> <link rel="next" title="5. Права доступа пользователей UAC" href="05_UAC.html" />
<link rel="prev" title="3. gSettings Template" href="03_gSettingsTemplate.html" /> <link rel="prev" title="3. Настройки GSettings (шаблон)" href="03_gSettingsTemplate.html" />
</head> </head>
<body class="wy-body-for-nav"> <body class="wy-body-for-nav">
@ -91,20 +91,18 @@
<ul> <ul>
<li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li> <li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li>
<li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li> <li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li>
<li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Права &amp; Контакты</a></li> <li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Лицензия &amp; Контакты</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Robot/01_Robot.html">1. Описание</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/01_Robot.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/02_Defs.html">2. Функции</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/02_uidesktop.html">2. Функции UIDesktop</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/02_uidesktop.html">2. UIDesktop</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/03_uiweb.html">3. Функции UIWeb</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/03_uiweb.html">3. UIWeb</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/04_keyboard.html">4. Функции Keyboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/04_keyboard.html">4. Keyboard</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/05_clipboard.html">5. Функции Clipboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/05_clipboard.html">5. Clipboard</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/06_mouse.html">6. Функции Mouse</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/06_mouse.html">6. Mouse</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/07_image.html">7. Функции Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/07_image.html">7. Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/08_HowToUse.html">8. Как использовать?</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/08_HowToUse.html">8. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/09_Dependencies.html">9. Зависимости</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p>
<ul> <ul>
@ -113,20 +111,24 @@
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p>
<ul class="current"> <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="01_Orchestrator.html">1. Description</a></li> <li class="toctree-l1"><a class="reference internal" href="01_Orchestrator.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="02_Defs.html">2. Функции</a></li>
<li class="toctree-l1"><a class="reference internal" href="03_gSettingsTemplate.html">3. gSettings Template</a></li> <li class="toctree-l1"><a class="reference internal" href="03_gSettingsTemplate.html">3. Настройки GSettings (шаблон)</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">4. How to use</a></li> <li class="toctree-l1 current"><a class="current reference internal" href="#">4. Как использовать?</a><ul>
<li class="toctree-l1"><a class="reference internal" href="05_UAC.html">5. UAC - User Access Control</a></li> <li class="toctree-l2"><a class="reference internal" href="#id2">Как запустить?</a></li>
<li class="toctree-l1"><a class="reference internal" href="06_Defs%20Managers.html">6. Defs Managers</a></li> <li class="toctree-l2"><a class="reference internal" href="#id3">Параметры настройки</a></li>
<li class="toctree-l2"><a class="reference internal" href="#id4">Быстрая навигация</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="05_UAC.html">5. Права доступа пользователей UAC</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Функции</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p> <p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Defs StopSafe</a></li> <li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Функции StopSafe</a></li>
</ul> </ul>
@ -175,7 +177,7 @@
<li><a href="../index.html" class="icon icon-home"></a> &raquo;</li> <li><a href="../index.html" class="icon icon-home"></a> &raquo;</li>
<li>4. How to use</li> <li>4. Как использовать?</li>
<li class="wy-breadcrumbs-aside"> <li class="wy-breadcrumbs-aside">
@ -194,9 +196,16 @@
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article"> <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody"> <div itemprop="articleBody">
<div class="section" id="how-to-use"> <div class="section" id="id1">
<h1>4. How to use<a class="headerlink" href="#how-to-use" title="Ссылка на этот заголовок"></a></h1> <h1>4. Как использовать?<a class="headerlink" href="#id1" title="Ссылка на этот заголовок"></a></h1>
<p>You need to run orchestrator process?</p> <div class="section" id="id2">
<h2>Как запустить?<a class="headerlink" href="#id2" title="Ссылка на этот заголовок"></a></h2>
<p>Хотите выполнить запуск Оркестратора?</p>
<p><strong>Для этого достаточно (выбрать одно):</strong></p>
<ul class="simple">
<li><p>запустить .cmd файл, расположенный в папке pyOpenRPA по адресу: OrchestratorpyOpenRPA.Orchestrator_x64.cmd</p></li>
<li><p>в свой .py скрипт добавить следующий код (см. ниже)</p></li>
</ul>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="k">if</span> <span class="vm">__name__</span> <span class="o">==</span> <span class="s2">&quot;__main__&quot;</span><span class="p">:</span> <span class="c1"># New init way - allow run as module -m PyOpenRPA.Orchestrator</span> <div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="k">if</span> <span class="vm">__name__</span> <span class="o">==</span> <span class="s2">&quot;__main__&quot;</span><span class="p">:</span> <span class="c1"># New init way - allow run as module -m PyOpenRPA.Orchestrator</span>
<span class="kn">from</span> <span class="nn">pyOpenRPA</span> <span class="kn">import</span> <span class="n">Orchestrator</span> <span class="c1"># Import orchestrator main</span> <span class="kn">from</span> <span class="nn">pyOpenRPA</span> <span class="kn">import</span> <span class="n">Orchestrator</span> <span class="c1"># Import orchestrator main</span>
<span class="n">gSettings</span> <span class="o">=</span> <span class="n">SettingsTemplate</span><span class="o">.</span><span class="n">Create</span><span class="p">(</span><span class="n">inModeStr</span><span class="o">=</span><span class="s2">&quot;BASIC&quot;</span><span class="p">)</span> <span class="c1"># Create GSettings with basic configuration - no more config is available from the box - you can create own</span> <span class="n">gSettings</span> <span class="o">=</span> <span class="n">SettingsTemplate</span><span class="o">.</span><span class="n">Create</span><span class="p">(</span><span class="n">inModeStr</span><span class="o">=</span><span class="s2">&quot;BASIC&quot;</span><span class="p">)</span> <span class="c1"># Create GSettings with basic configuration - no more config is available from the box - you can create own</span>
@ -204,7 +213,10 @@
<span class="n">Orchestrator</span><span class="o">.</span><span class="n">Orchestrator</span><span class="p">(</span><span class="n">inGSettings</span><span class="o">=</span><span class="n">gSettings</span><span class="p">)</span> <span class="n">Orchestrator</span><span class="o">.</span><span class="n">Orchestrator</span><span class="p">(</span><span class="n">inGSettings</span><span class="o">=</span><span class="n">gSettings</span><span class="p">)</span>
</pre></div> </pre></div>
</div> </div>
<p>If you need more configurations - so you can see here:</p> </div>
<div class="section" id="id3">
<h2>Параметры настройки<a class="headerlink" href="#id3" title="Ссылка на этот заголовок"></a></h2>
<p>Также вы можете выполнить более тонкую настройку параметров Оркестратора. Ниже пример такой настройки:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">psutil</span><span class="o">,</span> <span class="nn">datetime</span><span class="o">,</span> <span class="nn">logging</span><span class="o">,</span> <span class="nn">os</span><span class="o">,</span> <span class="nn">sys</span> <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">psutil</span><span class="o">,</span> <span class="nn">datetime</span><span class="o">,</span> <span class="nn">logging</span><span class="o">,</span> <span class="nn">os</span><span class="o">,</span> <span class="nn">sys</span>
@ -245,9 +257,20 @@
</pre></div> </pre></div>
</div> </div>
<p> .. v1.2.12 replace:: v1.2.12 </div>
.. <a href="#id1"><span class="problematic" id="id2">|author|</span></a> replace:: Ivan Maslov &lt;<a class="reference external" href="mailto:ivan&#46;maslov&#37;&#52;&#48;unicodelabs&#46;ru">ivan<span>&#46;</span>maslov<span>&#64;</span>unicodelabs<span>&#46;</span>ru</a>&gt;</p> <div class="section" id="id4">
<h2>Быстрая навигация<a class="headerlink" href="#id4" title="Ссылка на этот заголовок"></a></h2>
<ul class="simple">
<li><p><a class="reference external" href="https://t.me/pyOpenRPA">Сообщество pyOpenRPA (telegram)</a></p></li>
<li><p><a class="reference external" href="https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24">Сообщество pyOpenRPA (tenchat)</a></p></li>
<li><p><a class="reference external" href="https://vk.com/pyopenrpa">Сообщество pyOpenRPA (вконтакте)</a></p></li>
<li><p><a class="reference external" href="https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf">Презентация pyOpenRPA</a></p></li>
<li><p><a class="reference external" href="https://pyopenrpa.ru">Портал pyOpenRPA</a></p></li>
<li><p><a class="reference external" href="https://gitlab.com/UnicodeLabs/OpenRPA">Репозиторий pyOpenRPA</a></p></li>
</ul>
<p> .. v1.2.12 replace:: v1.2.12</p>
<p></p> <p></p>
</div>
</div> </div>
@ -256,8 +279,8 @@
</div> </div>
<footer> <footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="05_UAC.html" class="btn btn-neutral float-right" title="5. UAC - User Access Control" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a> <a href="05_UAC.html" class="btn btn-neutral float-right" title="5. Права доступа пользователей UAC" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="03_gSettingsTemplate.html" class="btn btn-neutral float-left" title="3. gSettings Template" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a> <a href="03_gSettingsTemplate.html" class="btn btn-neutral float-left" title="3. Настройки GSettings (шаблон)" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a>
</div> </div>
<hr/> <hr/>

@ -7,7 +7,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>5. UAC - User Access Control &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title> <title>5. Права доступа пользователей UAC &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title>
@ -41,8 +41,8 @@
<link rel="index" title="Алфавитный указатель" href="../genindex.html" /> <link rel="index" title="Алфавитный указатель" href="../genindex.html" />
<link rel="search" title="Поиск" href="../search.html" /> <link rel="search" title="Поиск" href="../search.html" />
<link rel="next" title="6. Defs Managers" href="06_Defs%20Managers.html" /> <link rel="next" title="2. Функции" href="../Agent/02_Defs.html" />
<link rel="prev" title="4. How to use" href="04_HowToUse.html" /> <link rel="prev" title="4. Как использовать?" href="04_HowToUse.html" />
</head> </head>
<body class="wy-body-for-nav"> <body class="wy-body-for-nav">
@ -91,20 +91,18 @@
<ul> <ul>
<li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li> <li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li>
<li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li> <li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li>
<li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Права &amp; Контакты</a></li> <li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Лицензия &amp; Контакты</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Robot/01_Robot.html">1. Описание</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/01_Robot.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/02_Defs.html">2. Функции</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/02_uidesktop.html">2. Функции UIDesktop</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/02_uidesktop.html">2. UIDesktop</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/03_uiweb.html">3. Функции UIWeb</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/03_uiweb.html">3. UIWeb</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/04_keyboard.html">4. Функции Keyboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/04_keyboard.html">4. Keyboard</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/05_clipboard.html">5. Функции Clipboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/05_clipboard.html">5. Clipboard</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/06_mouse.html">6. Функции Mouse</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/06_mouse.html">6. Mouse</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/07_image.html">7. Функции Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/07_image.html">7. Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/08_HowToUse.html">8. Как использовать?</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/08_HowToUse.html">8. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/09_Dependencies.html">9. Зависимости</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p>
<ul> <ul>
@ -113,24 +111,24 @@
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p>
<ul class="current"> <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="01_Orchestrator.html">1. Description</a></li> <li class="toctree-l1"><a class="reference internal" href="01_Orchestrator.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="02_Defs.html">2. Функции</a></li>
<li class="toctree-l1"><a class="reference internal" href="03_gSettingsTemplate.html">3. gSettings Template</a></li> <li class="toctree-l1"><a class="reference internal" href="03_gSettingsTemplate.html">3. Настройки GSettings (шаблон)</a></li>
<li class="toctree-l1"><a class="reference internal" href="04_HowToUse.html">4. How to use</a></li> <li class="toctree-l1"><a class="reference internal" href="04_HowToUse.html">4. Как использовать?</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">5. UAC - User Access Control</a><ul> <li class="toctree-l1 current"><a class="current reference internal" href="#">5. Права доступа пользователей UAC</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#about">About</a></li> <li class="toctree-l2"><a class="reference internal" href="#id1">Описание</a></li>
<li class="toctree-l2"><a class="reference internal" href="#uac-dict-for-orchestrator-web-ui-rights">UAC Dict for Orchestrator WEB UI rights</a></li> <li class="toctree-l2"><a class="reference internal" href="#uac-dict-for-orchestrator-web-ui-rights">UAC Dict for Orchestrator WEB UI rights</a></li>
<li class="toctree-l2"><a class="reference internal" href="#id2">Быстрая навигация</a></li>
</ul> </ul>
</li> </li>
<li class="toctree-l1"><a class="reference internal" href="06_Defs%20Managers.html">6. Defs Managers</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Функции</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p> <p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Defs StopSafe</a></li> <li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Функции StopSafe</a></li>
</ul> </ul>
@ -179,7 +177,7 @@
<li><a href="../index.html" class="icon icon-home"></a> &raquo;</li> <li><a href="../index.html" class="icon icon-home"></a> &raquo;</li>
<li>5. UAC - User Access Control</li> <li>5. Права доступа пользователей UAC</li>
<li class="wy-breadcrumbs-aside"> <li class="wy-breadcrumbs-aside">
@ -198,16 +196,17 @@
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article"> <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody"> <div itemprop="articleBody">
<div class="section" id="uac-user-access-control"> <div class="section" id="uac">
<h1>5. UAC - User Access Control<a class="headerlink" href="#uac-user-access-control" title="Ссылка на этот заголовок"></a></h1> <h1>5. Права доступа пользователей UAC<a class="headerlink" href="#uac" title="Ссылка на этот заголовок"></a></h1>
<div class="section" id="about"> <div class="section" id="id1">
<h2>About<a class="headerlink" href="#about" title="Ссылка на этот заголовок"></a></h2> <h2>Описание<a class="headerlink" href="#id1" title="Ссылка на этот заголовок"></a></h2>
<p>Orchestrator has mega feature - user access control (UAC). This feature allow you to manipulate access of the web UI for the all users!</p> <p>Оркестратор обладает уникальным и гибким механизмом контроля и распределения прав доступа пользователей (UAC - User Access Control). Концепция pyOpenRPA заключается в том, что настройка доступа должна быть максимально функциональной, но при этом удобной в использовании.</p>
<p>If you need to give admin rights - you dont customize UAC dict.</p> <p>Если требуется дать все права доступа - не нужно ничего редактировать - они будут по умолчанию.</p>
<p>If you need to give some little rights for user only for one robot in orchestrator web panel - you can set the following properties in UAC dict.</p> <p>Если нужно внести корректировки - вы можете указать лишь те ключи доступа, которые потребуются пользователю.</p>
<p>To work with UAC you can use defs <code class="docutils literal notranslate"><span class="pre">Orchestrator.UAC</span></code> group.</p> <p>Также UAC механизм распределения прав доступа отлично интегрируется со сторонними системами безопасности, которые уже используются в компаниях, например Active Directory и другие.</p>
<p>!!!ATTENTION!!!</p> <p>Функции по работе с UAC представлены в группе <code class="docutils literal notranslate"><span class="pre">Orchestrator.UAC</span></code> в разделе описания функций: <a class="reference internal" href="02_Defs.html#module-orchestrator-defs"><span class="std std-ref">2. Функции</span></a>.</p>
<p>Need practice example to work with UAC! - too hard to understand</p> <p>Если у вас останутся вопросы, то вы всегда можете обратиться в центр поддержки клиентов pyOpenRPA. Контакты: <a class="reference internal" href="../03_Copyrights_Contacts.html#copyrights-contacts"><span class="std std-ref">2. Лицензия &amp; Контакты</span></a></p>
<p>pyOpenRPA - роботы помогут!</p>
</div> </div>
<div class="section" id="uac-dict-for-orchestrator-web-ui-rights"> <div class="section" id="uac-dict-for-orchestrator-web-ui-rights">
<h2>UAC Dict for Orchestrator WEB UI rights<a class="headerlink" href="#uac-dict-for-orchestrator-web-ui-rights" title="Ссылка на этот заголовок"></a></h2> <h2>UAC Dict for Orchestrator WEB UI rights<a class="headerlink" href="#uac-dict-for-orchestrator-web-ui-rights" title="Ссылка на этот заголовок"></a></h2>
@ -245,8 +244,18 @@
<span class="p">}</span> <span class="p">}</span>
</pre></div> </pre></div>
</div> </div>
<p> .. v1.2.12 replace:: v1.2.12 </div>
.. <a href="#id1"><span class="problematic" id="id2">|author|</span></a> replace:: Ivan Maslov &lt;<a class="reference external" href="mailto:ivan&#46;maslov&#37;&#52;&#48;unicodelabs&#46;ru">ivan<span>&#46;</span>maslov<span>&#64;</span>unicodelabs<span>&#46;</span>ru</a>&gt;</p> <div class="section" id="id2">
<h2>Быстрая навигация<a class="headerlink" href="#id2" title="Ссылка на этот заголовок"></a></h2>
<ul class="simple">
<li><p><a class="reference external" href="https://t.me/pyOpenRPA">Сообщество pyOpenRPA (telegram)</a></p></li>
<li><p><a class="reference external" href="https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24">Сообщество pyOpenRPA (tenchat)</a></p></li>
<li><p><a class="reference external" href="https://vk.com/pyopenrpa">Сообщество pyOpenRPA (вконтакте)</a></p></li>
<li><p><a class="reference external" href="https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf">Презентация pyOpenRPA</a></p></li>
<li><p><a class="reference external" href="https://pyopenrpa.ru">Портал pyOpenRPA</a></p></li>
<li><p><a class="reference external" href="https://gitlab.com/UnicodeLabs/OpenRPA">Репозиторий pyOpenRPA</a></p></li>
</ul>
<p> .. v1.2.12 replace:: v1.2.12</p>
<p></p> <p></p>
</div> </div>
</div> </div>
@ -257,8 +266,8 @@
</div> </div>
<footer> <footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="06_Defs%20Managers.html" class="btn btn-neutral float-right" title="6. Defs Managers" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a> <a href="../Agent/02_Defs.html" class="btn btn-neutral float-right" title="2. Функции" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="04_HowToUse.html" class="btn btn-neutral float-left" title="4. How to use" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a> <a href="04_HowToUse.html" class="btn btn-neutral float-left" title="4. Как использовать?" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a>
</div> </div>
<hr/> <hr/>

File diff suppressed because it is too large Load Diff

@ -41,8 +41,8 @@
<link rel="index" title="Алфавитный указатель" href="../genindex.html" /> <link rel="index" title="Алфавитный указатель" href="../genindex.html" />
<link rel="search" title="Поиск" href="../search.html" /> <link rel="search" title="Поиск" href="../search.html" />
<link rel="next" title="2. Функции" href="02_Defs.html" /> <link rel="next" title="2. Функции UIDesktop" href="02_uidesktop.html" />
<link rel="prev" title="2. Права &amp; Контакты" href="../03_Copyrights_Contacts.html" /> <link rel="prev" title="2. Лицензия &amp; Контакты" href="../03_Copyrights_Contacts.html" />
</head> </head>
<body class="wy-body-for-nav"> <body class="wy-body-for-nav">
@ -91,20 +91,23 @@
<ul> <ul>
<li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li> <li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li>
<li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li> <li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li>
<li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Права &amp; Контакты</a></li> <li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Лицензия &amp; Контакты</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p>
<ul class="current"> <ul class="current">
<li class="toctree-l1 current"><a class="current reference internal" href="#">1. Описание</a></li> <li class="toctree-l1 current"><a class="current reference internal" href="#">1. Описание</a><ul>
<li class="toctree-l1"><a class="reference internal" href="02_Defs.html">2. Функции</a></li> <li class="toctree-l2"><a class="reference internal" href="#id2">Общее</a></li>
<li class="toctree-l1"><a class="reference internal" href="02_uidesktop.html">2. UIDesktop</a></li> <li class="toctree-l2"><a class="reference internal" href="#id3">Примеры</a></li>
<li class="toctree-l1"><a class="reference internal" href="03_uiweb.html">3. UIWeb</a></li> <li class="toctree-l2"><a class="reference internal" href="#id4">Быстрая навигация</a></li>
<li class="toctree-l1"><a class="reference internal" href="04_keyboard.html">4. Keyboard</a></li> </ul>
<li class="toctree-l1"><a class="reference internal" href="05_clipboard.html">5. Clipboard</a></li> </li>
<li class="toctree-l1"><a class="reference internal" href="06_mouse.html">6. Mouse</a></li> <li class="toctree-l1"><a class="reference internal" href="02_uidesktop.html">2. Функции UIDesktop</a></li>
<li class="toctree-l1"><a class="reference internal" href="07_image.html">7. Image</a></li> <li class="toctree-l1"><a class="reference internal" href="03_uiweb.html">3. Функции UIWeb</a></li>
<li class="toctree-l1"><a class="reference internal" href="04_keyboard.html">4. Функции Keyboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="05_clipboard.html">5. Функции Clipboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="06_mouse.html">6. Функции Mouse</a></li>
<li class="toctree-l1"><a class="reference internal" href="07_image.html">7. Функции Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="08_HowToUse.html">8. Как использовать?</a></li> <li class="toctree-l1"><a class="reference internal" href="08_HowToUse.html">8. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="09_Dependencies.html">9. Зависимости</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p>
<ul> <ul>
@ -113,20 +116,19 @@
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Description</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Функции</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. gSettings Template</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. Настройки GSettings (шаблон)</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. How to use</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. UAC - User Access Control</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. Права доступа пользователей UAC</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/06_Defs%20Managers.html">6. Defs Managers</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Функции</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p> <p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Defs StopSafe</a></li> <li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Функции StopSafe</a></li>
</ul> </ul>
@ -196,29 +198,38 @@
<div class="section" id="module-robot-description"> <div class="section" id="module-robot-description">
<span id="id1"></span><h1>1. Описание<a class="headerlink" href="#module-robot-description" title="Ссылка на этот заголовок"></a></h1> <span id="id1"></span><h1>1. Описание<a class="headerlink" href="#module-robot-description" title="Ссылка на этот заголовок"></a></h1>
<div class="section" id="id2">
<h2>Общее<a class="headerlink" href="#id2" title="Ссылка на этот заголовок"></a></h2>
<p>Модуль обеспечивает всю необходимую функциональность для создания любого программного робота RPA. Модуль робота поставляется в качестве библиотеки Python, что позволяет с легкостью интегрировать его в другие проекты перспективных технологий.</p> <p>Модуль обеспечивает всю необходимую функциональность для создания любого программного робота RPA. Модуль робота поставляется в качестве библиотеки Python, что позволяет с легкостью интегрировать его в другие проекты перспективных технологий.</p>
<p><strong>Содержит</strong></p> <p><strong>Содержит</strong></p>
<ul class="simple"> <ul class="simple">
<li><p>Уровень доступа к элементам локального приложения (win32, UI automation), и веб приложения</p> <li><p><strong>Уровень доступа к элементам локального приложения (win32, UI automation), и веб приложения</strong></p>
<ul> <ul>
<li><p>UIDesktop: инструменты взаимодействия с элементами локального приложения (взаимодействие с ОС через протоколы win32, UI automation). Перейти к описанию функций: <a class="reference internal" href="02_uidesktop.html#module-robot-uidesktop"><span class="std std-ref">2. UIDesktop</span></a></p></li> <li><p>UIDesktop: инструменты взаимодействия с элементами локального приложения (взаимодействие с ОС через протоколы win32, UI automation). Перейти к описанию функций: <a class="reference internal" href="02_uidesktop.html#module-robot-uidesktop"><span class="std std-ref">2. Функции UIDesktop</span></a></p></li>
<li><p>UIWeb: инструменты взаимодействия с элементами веб приложения. Перейти к описанию функций: <a class="reference internal" href="03_uiweb.html#module-robot-uiweb"><span class="std std-ref">3. UIWeb</span></a></p></li> <li><p>UIWeb: инструменты взаимодействия с элементами веб приложения. Перейти к описанию функций: <a class="reference internal" href="03_uiweb.html#module-robot-uiweb"><span class="std std-ref">3. Функции UIWeb</span></a></p></li>
</ul> </ul>
</li> </li>
<li><p>Уровень доступа к текстовым каналам передачи данных (клавиатура, буфер обмена)</p> <li><p><strong>Уровень доступа к текстовым каналам передачи данных (клавиатура, буфер обмена)</strong></p>
<ul> <ul>
<li><p>Keyboard: инструменты взаимодействия с клавиатурой. Перейти к описанию функций: <a class="reference internal" href="04_keyboard.html#module-robot-keyboard"><span class="std std-ref">4. Keyboard</span></a></p></li> <li><p>Keyboard: инструменты взаимодействия с клавиатурой. Перейти к описанию функций: <a class="reference internal" href="04_keyboard.html#module-robot-keyboard"><span class="std std-ref">4. Функции Keyboard</span></a></p></li>
<li><p>Clipboard: инструменты взаимодействия с буфером обмена. Перейти к описанию функций: <a class="reference internal" href="05_clipboard.html#module-robot-clipboard"><span class="std std-ref">5. Clipboard</span></a></p></li> <li><p>Clipboard: инструменты взаимодействия с буфером обмена. Перейти к описанию функций: <a class="reference internal" href="05_clipboard.html#module-robot-clipboard"><span class="std std-ref">5. Функции Clipboard</span></a></p></li>
</ul> </ul>
</li> </li>
<li><p>Уровень доступа к графическим каналам передачи данных (мышь, экран)</p> <li><p><strong>Уровень доступа к графическим каналам передачи данных (мышь, экран)</strong></p>
<ul> <ul>
<li><p>Mouse: инструменты взаимодействия с мышью. Перейти к описанию функций: <a class="reference internal" href="06_mouse.html#module-robot-mouse"><span class="std std-ref">6. Mouse</span></a></p></li> <li><p>Mouse: инструменты взаимодействия с мышью. Перейти к описанию функций: <a class="reference internal" href="06_mouse.html#module-robot-mouse"><span class="std std-ref">6. Функции Mouse</span></a></p></li>
<li><p>Image: инструменты взаимодействия с эраном рабочего стола. Перейти к описанию функций: <a class="reference internal" href="07_image.html#module-robot-image"><span class="std std-ref">7. Image</span></a></p></li> <li><p>Image: инструменты взаимодействия с эраном рабочего стола. Перейти к описанию функций: <a class="reference internal" href="07_image.html#module-robot-image"><span class="std std-ref">7. Функции Image</span></a></p></li>
</ul> </ul>
</li> </li>
</ul> </ul>
<p>Ниже преставлен пример использования инструментов робота.</p> <p>Дорогие коллеги!</p>
<p>Мы знаем, что с pyOpenRPA вы сможете существенно улучшить качество вашего бизнеса. Платформа роботизации pyOpenRPA - это разработка, которая дает возможность делать виртуальных сотрудников (программных роботов RPA) выгодными, начиная от эффекта всего в <strong>10 тыс. руб.</strong> И управлять ими будете только Вы!</p>
<p>Если у вас останутся вопросы, то вы всегда можете обратиться в центр поддержки клиентов pyOpenRPA. Контакты: <a class="reference internal" href="../03_Copyrights_Contacts.html#copyrights-contacts"><span class="std std-ref">2. Лицензия &amp; Контакты</span></a></p>
<p>pyOpenRPA - роботы помогут!</p>
</div>
<div class="section" id="id3">
<h2>Примеры<a class="headerlink" href="#id3" title="Ссылка на этот заголовок"></a></h2>
<p><strong>Ниже преставлен пример использования инструментов робота.</strong></p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">time</span> <div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">time</span>
<span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">UIDesktop</span> <span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">UIDesktop</span>
@ -304,9 +315,20 @@
<span class="n">Mouse</span><span class="o">.</span><span class="n">mouseUp</span><span class="p">()</span> <span class="n">Mouse</span><span class="o">.</span><span class="n">mouseUp</span><span class="p">()</span>
</pre></div> </pre></div>
</div> </div>
<p> .. v1.2.12 replace:: v1.2.12 </div>
.. <a href="#id2"><span class="problematic" id="id3">|author|</span></a> replace:: Ivan Maslov &lt;<a class="reference external" href="mailto:ivan&#46;maslov&#37;&#52;&#48;unicodelabs&#46;ru">ivan<span>&#46;</span>maslov<span>&#64;</span>unicodelabs<span>&#46;</span>ru</a>&gt;</p> <div class="section" id="id4">
<h2>Быстрая навигация<a class="headerlink" href="#id4" title="Ссылка на этот заголовок"></a></h2>
<ul class="simple">
<li><p><a class="reference external" href="https://t.me/pyOpenRPA">Сообщество pyOpenRPA (telegram)</a></p></li>
<li><p><a class="reference external" href="https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24">Сообщество pyOpenRPA (tenchat)</a></p></li>
<li><p><a class="reference external" href="https://vk.com/pyopenrpa">Сообщество pyOpenRPA (вконтакте)</a></p></li>
<li><p><a class="reference external" href="https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf">Презентация pyOpenRPA</a></p></li>
<li><p><a class="reference external" href="https://pyopenrpa.ru">Портал pyOpenRPA</a></p></li>
<li><p><a class="reference external" href="https://gitlab.com/UnicodeLabs/OpenRPA">Репозиторий pyOpenRPA</a></p></li>
</ul>
<p> .. v1.2.12 replace:: v1.2.12</p>
<p></p> <p></p>
</div>
</div> </div>
@ -315,8 +337,8 @@
</div> </div>
<footer> <footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="02_Defs.html" class="btn btn-neutral float-right" title="2. Функции" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a> <a href="02_uidesktop.html" class="btn btn-neutral float-right" title="2. Функции UIDesktop" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="../03_Copyrights_Contacts.html" class="btn btn-neutral float-left" title="2. Права &amp; Контакты" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a> <a href="../03_Copyrights_Contacts.html" class="btn btn-neutral float-left" title="2. Лицензия &amp; Контакты" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a>
</div> </div>
<hr/> <hr/>

@ -1,710 +0,0 @@
<!DOCTYPE html>
<html class="writer-html5" lang="ru" >
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>2. Функции &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title>
<link rel="stylesheet" href="../_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<link rel="shortcut icon" href="../_static/favicon.ico"/>
<!--[if lt IE 9]>
<script src="../_static/js/html5shiv.min.js"></script>
<![endif]-->
<script type="text/javascript" id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
<script src="../_static/jquery.js"></script>
<script src="../_static/underscore.js"></script>
<script src="../_static/doctools.js"></script>
<script src="../_static/translations.js"></script>
<script type="text/javascript" src="../_static/js/theme.js"></script>
<link rel="index" title="Алфавитный указатель" href="../genindex.html" />
<link rel="search" title="Поиск" href="../search.html" />
<link rel="next" title="2. UIDesktop" href="02_uidesktop.html" />
<link rel="prev" title="1. Описание" href="01_Robot.html" />
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" >
<a href="../index.html" class="icon icon-home"> pyOpenRPA v1.2.12
</a>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
<input type="text" name="q" placeholder="Поиск в документации" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<p class="caption"><span class="caption-text">ОБЩЕЕ</span></p>
<ul>
<li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li>
<li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li>
<li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Права &amp; Контакты</a></li>
</ul>
<p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="01_Robot.html">1. Описание</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">2. Функции</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#references">References</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="02_uidesktop.html">2. UIDesktop</a></li>
<li class="toctree-l1"><a class="reference internal" href="03_uiweb.html">3. UIWeb</a></li>
<li class="toctree-l1"><a class="reference internal" href="04_keyboard.html">4. Keyboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="05_clipboard.html">5. Clipboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="06_mouse.html">6. Mouse</a></li>
<li class="toctree-l1"><a class="reference internal" href="07_image.html">7. Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="08_HowToUse.html">8. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="09_Dependencies.html">9. Зависимости</a></li>
</ul>
<p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../Studio/01_Studio.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Studio/02_HowToUse.html">2. Как использовать?</a></li>
</ul>
<p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Description</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Defs</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. gSettings Template</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. How to use</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. UAC - User Access Control</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/06_Defs%20Managers.html">6. Defs Managers</a></li>
</ul>
<p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Defs</a></li>
</ul>
<p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Defs StopSafe</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="../index.html">pyOpenRPA v1.2.12</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="../index.html" class="icon icon-home"></a> &raquo;</li>
<li>2. Функции</li>
<li class="wy-breadcrumbs-aside">
<a href="../_sources/Robot/02_Defs.rst.txt" rel="nofollow"> Просмотреть исходный код страницы</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="id1">
<h1>2. Функции<a class="headerlink" href="#id1" title="Ссылка на этот заголовок"></a></h1>
<p>Here you can find the functions description for interaction with desktop GUI applications</p>
<p>How to use both x32 and x64 python processes (it can be helpfully, if another app GUI is on another bitness than your app)</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">UIDesktop</span>
<span class="c1">#Section for robot init</span>
<span class="n">lPyOpenRPA_SettingsDict</span> <span class="o">=</span> <span class="p">{</span>
<span class="s2">&quot;Python32FullPath&quot;</span><span class="p">:</span> <span class="s2">&quot;..</span><span class="se">\\</span><span class="s2">Resources</span><span class="se">\\</span><span class="s2">WPy32-3720</span><span class="se">\\</span><span class="s2">python-3.7.2</span><span class="se">\\</span><span class="s2">python.exe&quot;</span><span class="p">,</span> <span class="c1">#Set from user: &quot;..\\Resources\\WPy32-3720\\python-3.7.2\\OpenRPARobotGUIx32.exe&quot;</span>
<span class="s2">&quot;Python64FullPath&quot;</span><span class="p">:</span> <span class="s2">&quot;..</span><span class="se">\\</span><span class="s2">Resources</span><span class="se">\\</span><span class="s2">WPy64-3720</span><span class="se">\\</span><span class="s2">python-3.7.2.amd64</span><span class="se">\\</span><span class="s2">python.exe&quot;</span><span class="p">,</span> <span class="c1">#Set from user</span>
<span class="s2">&quot;Python32ProcessName&quot;</span><span class="p">:</span> <span class="s2">&quot;pyOpenRPA_UIDesktopX32.exe&quot;</span><span class="p">,</span> <span class="c1">#Config set once</span>
<span class="s2">&quot;Python64ProcessName&quot;</span><span class="p">:</span> <span class="s2">&quot;pyOpenRPA_UIDesktopX64.exe&quot;</span> <span class="c1">#Config set once</span>
<span class="p">}</span>
<span class="c1"># Init the pyOpenRPA configuration</span>
<span class="n">UIDesktop</span><span class="o">.</span><span class="n">Utils</span><span class="o">.</span><span class="n">ProcessBitness</span><span class="o">.</span><span class="n">SettingsInit</span><span class="p">(</span><span class="n">lPyOpenRPA_SettingsDict</span><span class="p">)</span>
<span class="c1"># Now you can use pyOpenRPA with both bitness.</span>
</pre></div>
</div>
<span class="target" id="module-pyOpenRPA.Robot.UIDesktop"></span><p><strong>Functions:</strong></p>
<table class="longtable docutils align-default">
<colgroup>
<col style="width: 10%" />
<col style="width: 90%" />
</colgroup>
<tbody>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt" title="pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Get_OSBitnessInt</span></code></a>()</p></td>
<td><p>Detect OS bitness.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication" title="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication"><code class="xref py py-obj docutils literal notranslate"><span class="pre">PWASpecification_Get_PWAApplication</span></code></a>(…)</p></td>
<td><p>#Backend selection - attribute «backend» («win32» || «uia») in 1-st list element</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO" title="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO"><code class="xref py py-obj docutils literal notranslate"><span class="pre">PWASpecification_Get_UIO</span></code></a>(…)</p></td>
<td><p>#Backend def selection - attribute «backend» («win32» || «uia») in 1-st list element #old name - GetControl</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorSecs_WaitAppear_Bool</span></code></a>(…)</p></td>
<td><p>Wait for UI object will appear in GUI for inWaitSecs seconds.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorSecs_WaitDisappear_Bool</span></code></a>(…)</p></td>
<td><p>Wait for UI object will disappear in GUI for inWaitSecs seconds.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorUIOActivity_Run_Dict</span></code></a>(…[, …])</p></td>
<td><p>Run the activity in UIO (UI Object)</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Exist_Bool</span></code></a>(inUIOSelector)</p></td>
<td><p>Check if object is exist by the UIO selector.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_FocusHighlight</span></code></a>(inUIOSelector)</p></td>
<td><p>Set focus and highlight (draw outline) the element (in app) by the UIO selector.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_GetChildList_UIOList</span></code></a>([…])</p></td>
<td><p>Get list of child UIOs by the parent UIOSelector</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_BitnessInt</span></code></a>(inSpecificationList)</p></td>
<td><p>Detect process bitness by the UI Object UIO Selector.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_BitnessStr</span></code></a>(inSpecificationList)</p></td>
<td><p>Detect process bitness by the UI Object UIO Selector.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIO</span></code></a>(inSpecificationList[, …])</p></td>
<td><p>Get the pywinauto object by the UIO selector.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIOActivityList</span></code></a>(inUIOSelector)</p></td>
<td><p>Get the list of the UI object activities</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIOInfo</span></code></a>(inUIOSelector)</p></td>
<td><p>Get the UIO dict of the attributes</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIOList</span></code></a>(inSpecificationList)</p></td>
<td><p>Get the UIO list by the selector</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Highlight</span></code></a>(inUIOSelector)</p></td>
<td><p>Highlight (draw outline) the element (in app) by the UIO selector.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_SafeOtherGet_Process</span></code></a>(inUIOSelector)</p></td>
<td><p>Safe get other process or None if destination app is the other/same bitness</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_SearchChildByMouse_UIO</span></code></a>(…)</p></td>
<td><p>UIOSelector (see description on the top of the document) #old name - AutomationSearchMouseElement</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_SearchChildByMouse_UIOTree</span></code></a>(…)</p></td>
<td><p>!!!!Safe call is included (you can set activity and UIDesktop will choose the bitness and return the result)!!!!!</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_TryRestore_Dict</span></code></a>(inSpecificationList)</p></td>
<td><p>Try to restore (maximize) window, if its minimized.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorsSecs_WaitAppear_List</span></code></a>(…[, …])</p></td>
<td><p>Wait for many UI object will appear in GUI for inWaitSecs seconds.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorsSecs_WaitDisappear_List</span></code></a>(…[, …])</p></td>
<td><p>Wait for many UI object will disappear in GUI for inWaitSecs seconds.</p></td>
</tr>
</tbody>
</table>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">Get_OSBitnessInt</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#Get_OSBitnessInt"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt" title="Ссылка на это определение"></a></dt>
<dd><p>Detect OS bitness.</p>
<dl class="field-list simple">
<dt class="field-odd">Результат</dt>
<dd class="field-odd"><p>int 32 or int 64</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">PWASpecification_Get_PWAApplication</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inControlSpecificationArray</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#PWASpecification_Get_PWAApplication"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication" title="Ссылка на это определение"></a></dt>
<dd><p>#Backend selection - attribute «backend» («win32» || «uia») in 1-st list element</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inControlSpecificationArray</strong> List of dict, dict in pywinauto.find_windows notation</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>process application object</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">PWASpecification_Get_UIO</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inControlSpecificationArray</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#PWASpecification_Get_UIO"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO" title="Ссылка на это определение"></a></dt>
<dd><p>#Backend def selection - attribute «backend» («win32» || «uia») in 1-st list element
#old name - GetControl</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inControlSpecificationArray</strong> List of dict, dict in pywinauto.find_windows notation</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>list of UIO object</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorSecs_WaitAppear_Bool</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorSecs_WaitAppear_Bool"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for UI object will appear in GUI for inWaitSecs seconds.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> UIOSelector. Example: [{«title»:»notepad»},{«title»:»OK»}]</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element appear in GUI</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>True - UI object will appear. False - else case</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorSecs_WaitDisappear_Bool</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorSecs_WaitDisappear_Bool"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for UI object will disappear in GUI for inWaitSecs seconds.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> UIOSelector.
Example: [{«title»:»notepad»},{«title»:»OK»}]</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element disappear in GUI</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>True - UI object will disappear. False - else case</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorUIOActivity_Run_Dict</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em>, <em class="sig-param"><span class="n">inActionName</span></em>, <em class="sig-param"><span class="n">inArgumentList</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inkwArgumentObject</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorUIOActivity_Run_Dict"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict" title="Ссылка на это определение"></a></dt>
<dd><p>Run the activity in UIO (UI Object)</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p></li>
<li><p><strong>inActionName</strong> UIOActivity (name) activity name string from Pywinauto</p></li>
<li><p><strong>inArgumentList</strong> </p></li>
<li><p><strong>inkwArgumentObject</strong> </p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Exist_Bool</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Exist_Bool"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool" title="Ссылка на это определение"></a></dt>
<dd><p>Check if object is exist by the UIO selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> </p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>True - Object is exist. False - else case</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_FocusHighlight</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_FocusHighlight"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight" title="Ссылка на это определение"></a></dt>
<dd><p>Set focus and highlight (draw outline) the element (in app) by the UIO selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_GetChildList_UIOList</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inBackend</span><span class="o">=</span><span class="default_value">'win32'</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_GetChildList_UIOList"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList" title="Ссылка на это определение"></a></dt>
<dd><p>Get list of child UIOs by the parent UIOSelector</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p></li>
<li><p><strong>inBackend</strong> «win32» or «uia»</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_BitnessInt</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_BitnessInt"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt" title="Ссылка на это определение"></a></dt>
<dd><p>Detect process bitness by the UI Object UIO Selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inSpecificationList</strong> UIOSelector. Example: [{«title»:»notepad»},{«title»:»OK»}]</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>int 32 or int 64</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_BitnessStr</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_BitnessStr"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr" title="Ссылка на это определение"></a></dt>
<dd><p>Detect process bitness by the UI Object UIO Selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inSpecificationList</strong> UIOSelector. Example: [{«title»:»notepad»},{«title»:»OK»}]</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>str «32» or str «64»</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIO</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inElement</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inFlagRaiseException</span><span class="o">=</span><span class="default_value">True</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIO"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO" title="Ссылка на это определение"></a></dt>
<dd><p>Get the pywinauto object by the UIO selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> </p></li>
<li><p><strong>inElement</strong> </p></li>
<li><p><strong>inFlagRaiseException</strong> </p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIOActivityList</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIOActivityList"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList" title="Ссылка на это определение"></a></dt>
<dd><p>Get the list of the UI object activities</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIOInfo</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIOInfo"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo" title="Ссылка на это определение"></a></dt>
<dd><p>Get the UIO dict of the attributes</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIOList</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inElement</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inFlagRaiseException</span><span class="o">=</span><span class="default_value">True</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIOList"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList" title="Ссылка на это определение"></a></dt>
<dd><p>Get the UIO list by the selector</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> UIO Selector</p></li>
<li><p><strong>inElement</strong> Входной элемент - показатель, что не требуется выполнять коннект к процессу</p></li>
<li><p><strong>inFlagRaiseException</strong> Флаг True - выкинуть ошибку в случае обнаружении пустого списка</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Highlight</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Highlight"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight" title="Ссылка на это определение"></a></dt>
<dd><p>Highlight (draw outline) the element (in app) by the UIO selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_SafeOtherGet_Process</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_SafeOtherGet_Process"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process" title="Ссылка на это определение"></a></dt>
<dd><p>Safe get other process or None if destination app is the other/same bitness</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIO Selector of the UI object</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>None or process (of the other bitness)</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_SearchChildByMouse_UIO</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inElementSpecification</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_SearchChildByMouse_UIO"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO" title="Ссылка на это определение"></a></dt>
<dd><p>UIOSelector (see description on the top of the document)
#old name - AutomationSearchMouseElement</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inElementSpecification</strong> UIOSelector of the UI Object</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>pywinauto element wrapper instance or None</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_SearchChildByMouse_UIOTree</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_SearchChildByMouse_UIOTree"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree" title="Ссылка на это определение"></a></dt>
<dd><p>!!!!Safe call is included (you can set activity and UIDesktop will choose the bitness and return the result)!!!!!</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector of the UI Object</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p><p>?</p>
</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_TryRestore_Dict</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_TryRestore_Dict"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict" title="Ссылка на это определение"></a></dt>
<dd><p>Try to restore (maximize) window, if its minimized. (!IMPORTANT! When use UIA framework minimized windows doesnt appear by the UIOSelector. You need to try restore windows and after that try to get UIO)</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inSpecificationList</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorsSecs_WaitAppear_List</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationListList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em>, <em class="sig-param"><span class="n">inFlagWaitAllInMoment</span><span class="o">=</span><span class="default_value">False</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorsSecs_WaitAppear_List"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for many UI object will appear in GUI for inWaitSecs seconds.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationListList</strong> <p>UIOSelector list.
Example: [</p>
<blockquote>
<div><p>[{«title»:»notepad»},{«title»:»OK»}],
[{«title»:»notepad»},{«title»:»Cancel»}]</p>
</div></blockquote>
<p>]</p>
</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element appear in GUI</p></li>
<li><p><strong>inFlagWaitAllInMoment</strong> True - Wait all UI objects from the UIOSelector list to be appeared</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>List of index, which UI object UIO will be appeared. Example: [1] # Appear only UI object with UIO selector: [{«title»:»notepad»},{«title»:»Cancel»}]</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorsSecs_WaitDisappear_List</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationListList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em>, <em class="sig-param"><span class="n">inFlagWaitAllInMoment</span><span class="o">=</span><span class="default_value">False</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorsSecs_WaitDisappear_List"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for many UI object will disappear in GUI for inWaitSecs seconds.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationListList</strong> <p>UIOSelector list.
Example: [</p>
<blockquote>
<div><p>[{«title»:»notepad»},{«title»:»OK»}],
[{«title»:»notepad»},{«title»:»Cancel»}]</p>
</div></blockquote>
<p>]</p>
</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element disappear in GUI</p></li>
<li><p><strong>inFlagWaitAllInMoment</strong> True - Wait all UI objects from the UIOSelector list to be disappeared.</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>List of index, which UI object UIO will be disappeared. Example: [1] # Disappear only UI object with UIO selector: [{«title»:»notepad»},{«title»:»Cancel»}]</p>
</dd>
<dt class="field-odd">Результат</dt>
<dd class="field-odd"><p></p>
</dd>
</dl>
</dd></dl>
<div class="section" id="references">
<h2>References<a class="headerlink" href="#references" title="Ссылка на этот заголовок"></a></h2>
<p><a class="reference external" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> <a class="footnote-reference brackets" href="#id4" id="id5">1</a></p>
<dl class="footnote brackets">
<dt class="label" id="id4"><span class="brackets"><a class="fn-backref" href="#id5">1</a></span></dt>
<dd><p><a class="reference external" href="http://docutils.sourceforge.net/rst.html">http://docutils.sourceforge.net/rst.html</a></p>
</dd>
</dl>
<p> .. v1.2.12 replace:: v1.2.12
.. <a href="#id2"><span class="problematic" id="id3">|author|</span></a> replace:: Ivan Maslov &lt;<a class="reference external" href="mailto:ivan&#46;maslov&#37;&#52;&#48;unicodelabs&#46;ru">ivan<span>&#46;</span>maslov<span>&#64;</span>unicodelabs<span>&#46;</span>ru</a>&gt;</p>
<p></p>
</div>
</div>
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="02_uidesktop.html" class="btn btn-neutral float-right" title="2. UIDesktop" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="01_Robot.html" class="btn btn-neutral float-left" title="1. Описание" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a>
</div>
<hr/>
<div role="contentinfo">
<p>
&#169; Copyright 2022, ООО &#34;ОПЕН РПА&#34;.
</p>
</div>
Собрано при помощи <a href="https://www.sphinx-doc.org/">Sphinx</a> с использованием
<a href="https://github.com/readthedocs/sphinx_rtd_theme">темы,</a>
предоставленной <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>

File diff suppressed because it is too large Load Diff

@ -7,7 +7,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>3. UIWeb &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title> <title>3. Функции UIWeb &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title>
@ -41,8 +41,8 @@
<link rel="index" title="Алфавитный указатель" href="../genindex.html" /> <link rel="index" title="Алфавитный указатель" href="../genindex.html" />
<link rel="search" title="Поиск" href="../search.html" /> <link rel="search" title="Поиск" href="../search.html" />
<link rel="next" title="4. Keyboard" href="04_keyboard.html" /> <link rel="next" title="4. Функции Keyboard" href="04_keyboard.html" />
<link rel="prev" title="2. UIDesktop" href="02_uidesktop.html" /> <link rel="prev" title="2. Функции UIDesktop" href="02_uidesktop.html" />
</head> </head>
<body class="wy-body-for-nav"> <body class="wy-body-for-nav">
@ -91,23 +91,22 @@
<ul> <ul>
<li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li> <li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li>
<li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li> <li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li>
<li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Права &amp; Контакты</a></li> <li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Лицензия &amp; Контакты</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p>
<ul class="current"> <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="01_Robot.html">1. Описание</a></li> <li class="toctree-l1"><a class="reference internal" href="01_Robot.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="02_Defs.html">2. Функции</a></li> <li class="toctree-l1"><a class="reference internal" href="02_uidesktop.html">2. Функции UIDesktop</a></li>
<li class="toctree-l1"><a class="reference internal" href="02_uidesktop.html">2. UIDesktop</a></li> <li class="toctree-l1 current"><a class="current reference internal" href="#">3. Функции UIWeb</a><ul>
<li class="toctree-l1 current"><a class="current reference internal" href="#">3. UIWeb</a><ul> <li class="toctree-l2"><a class="reference internal" href="#id1">Общее</a></li>
<li class="toctree-l2"><a class="reference internal" href="#references">References</a></li> <li class="toctree-l2"><a class="reference internal" href="#id2">Быстрая навигация</a></li>
</ul> </ul>
</li> </li>
<li class="toctree-l1"><a class="reference internal" href="04_keyboard.html">4. Keyboard</a></li> <li class="toctree-l1"><a class="reference internal" href="04_keyboard.html">4. Функции Keyboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="05_clipboard.html">5. Clipboard</a></li> <li class="toctree-l1"><a class="reference internal" href="05_clipboard.html">5. Функции Clipboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="06_mouse.html">6. Mouse</a></li> <li class="toctree-l1"><a class="reference internal" href="06_mouse.html">6. Функции Mouse</a></li>
<li class="toctree-l1"><a class="reference internal" href="07_image.html">7. Image</a></li> <li class="toctree-l1"><a class="reference internal" href="07_image.html">7. Функции Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="08_HowToUse.html">8. Как использовать?</a></li> <li class="toctree-l1"><a class="reference internal" href="08_HowToUse.html">8. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="09_Dependencies.html">9. Зависимости</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p>
<ul> <ul>
@ -116,20 +115,19 @@
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Description</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Функции</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. gSettings Template</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. Настройки GSettings (шаблон)</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. How to use</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. UAC - User Access Control</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. Права доступа пользователей UAC</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/06_Defs%20Managers.html">6. Defs Managers</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Функции</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p> <p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Defs StopSafe</a></li> <li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Функции StopSafe</a></li>
</ul> </ul>
@ -178,7 +176,7 @@
<li><a href="../index.html" class="icon icon-home"></a> &raquo;</li> <li><a href="../index.html" class="icon icon-home"></a> &raquo;</li>
<li>3. UIWeb</li> <li>3. Функции UIWeb</li>
<li class="wy-breadcrumbs-aside"> <li class="wy-breadcrumbs-aside">
@ -198,463 +196,26 @@
<div itemprop="articleBody"> <div itemprop="articleBody">
<div class="section" id="uiweb"> <div class="section" id="uiweb">
<span id="module-robot-uiweb"></span><h1>3. UIWeb<a class="headerlink" href="#uiweb" title="Ссылка на этот заголовок"></a></h1> <span id="module-robot-uiweb"></span><h1>3. Функции UIWeb<a class="headerlink" href="#uiweb" title="Ссылка на этот заголовок"></a></h1>
<p>Here you can find the functions description for interaction with desktop GUI applications</p> <div class="section" id="id1">
<p>How to use both x32 and x64 python processes (it can be helpfully, if another app GUI is on another bitness than your app)</p> <h2>Общее<a class="headerlink" href="#id1" title="Ссылка на этот заголовок"></a></h2>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">UIDesktop</span> <p>Документация к модулю будет опубликована в Июле 2022. По всем вопросам роботизации WEB приложений обращайтесь в центр поддержки клиентов pyOpenRPA.</p>
<span class="c1">#Section for robot init</span> <p>Дорогие коллеги!</p>
<span class="n">lPyOpenRPA_SettingsDict</span> <span class="o">=</span> <span class="p">{</span> <p>Мы знаем, что с pyOpenRPA вы сможете существенно улучшить качество вашего бизнеса. Платформа роботизации pyOpenRPA - это разработка, которая дает возможность делать виртуальных сотрудников (программных роботов RPA) выгодными, начиная от эффекта всего в <strong>10 тыс. руб.</strong> И управлять ими будете только Вы!</p>
<span class="s2">&quot;Python32FullPath&quot;</span><span class="p">:</span> <span class="s2">&quot;..</span><span class="se">\\</span><span class="s2">Resources</span><span class="se">\\</span><span class="s2">WPy32-3720</span><span class="se">\\</span><span class="s2">python-3.7.2</span><span class="se">\\</span><span class="s2">python.exe&quot;</span><span class="p">,</span> <span class="c1">#Set from user: &quot;..\\Resources\\WPy32-3720\\python-3.7.2\\OpenRPARobotGUIx32.exe&quot;</span> <p>Если у вас останутся вопросы, то вы всегда можете обратиться в центр поддержки клиентов pyOpenRPA. Контакты: <a class="reference internal" href="../03_Copyrights_Contacts.html#copyrights-contacts"><span class="std std-ref">2. Лицензия &amp; Контакты</span></a></p>
<span class="s2">&quot;Python64FullPath&quot;</span><span class="p">:</span> <span class="s2">&quot;..</span><span class="se">\\</span><span class="s2">Resources</span><span class="se">\\</span><span class="s2">WPy64-3720</span><span class="se">\\</span><span class="s2">python-3.7.2.amd64</span><span class="se">\\</span><span class="s2">python.exe&quot;</span><span class="p">,</span> <span class="c1">#Set from user</span> <p>pyOpenRPA - роботы помогут!</p>
<span class="s2">&quot;Python32ProcessName&quot;</span><span class="p">:</span> <span class="s2">&quot;pyOpenRPA_UIDesktopX32.exe&quot;</span><span class="p">,</span> <span class="c1">#Config set once</span>
<span class="s2">&quot;Python64ProcessName&quot;</span><span class="p">:</span> <span class="s2">&quot;pyOpenRPA_UIDesktopX64.exe&quot;</span> <span class="c1">#Config set once</span>
<span class="p">}</span>
<span class="c1"># Init the pyOpenRPA configuration</span>
<span class="n">UIDesktop</span><span class="o">.</span><span class="n">Utils</span><span class="o">.</span><span class="n">ProcessBitness</span><span class="o">.</span><span class="n">SettingsInit</span><span class="p">(</span><span class="n">lPyOpenRPA_SettingsDict</span><span class="p">)</span>
<span class="c1"># Now you can use pyOpenRPA with both bitness.</span>
</pre></div>
</div> </div>
<span class="target" id="module-pyOpenRPA.Robot.UIDesktop"></span><p><strong>Functions:</strong></p> <div class="section" id="id2">
<table class="longtable docutils align-default"> <h2>Быстрая навигация<a class="headerlink" href="#id2" title="Ссылка на этот заголовок"></a></h2>
<colgroup> <ul class="simple">
<col style="width: 10%" /> <li><p><a class="reference external" href="https://t.me/pyOpenRPA">Сообщество pyOpenRPA (telegram)</a></p></li>
<col style="width: 90%" /> <li><p><a class="reference external" href="https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24">Сообщество pyOpenRPA (tenchat)</a></p></li>
</colgroup> <li><p><a class="reference external" href="https://vk.com/pyopenrpa">Сообщество pyOpenRPA (вконтакте)</a></p></li>
<tbody> <li><p><a class="reference external" href="https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf">Презентация pyOpenRPA</a></p></li>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt" title="pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Get_OSBitnessInt</span></code></a>()</p></td> <li><p><a class="reference external" href="https://pyopenrpa.ru">Портал pyOpenRPA</a></p></li>
<td><p>Detect OS bitness.</p></td> <li><p><a class="reference external" href="https://gitlab.com/UnicodeLabs/OpenRPA">Репозиторий pyOpenRPA</a></p></li>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication" title="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication"><code class="xref py py-obj docutils literal notranslate"><span class="pre">PWASpecification_Get_PWAApplication</span></code></a>(…)</p></td>
<td><p>#Backend selection - attribute «backend» («win32» || «uia») in 1-st list element</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO" title="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO"><code class="xref py py-obj docutils literal notranslate"><span class="pre">PWASpecification_Get_UIO</span></code></a>(…)</p></td>
<td><p>#Backend def selection - attribute «backend» («win32» || «uia») in 1-st list element #old name - GetControl</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorSecs_WaitAppear_Bool</span></code></a>(…)</p></td>
<td><p>Wait for UI object will appear in GUI for inWaitSecs seconds.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorSecs_WaitDisappear_Bool</span></code></a>(…)</p></td>
<td><p>Wait for UI object will disappear in GUI for inWaitSecs seconds.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorUIOActivity_Run_Dict</span></code></a>(…[, …])</p></td>
<td><p>Run the activity in UIO (UI Object)</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Exist_Bool</span></code></a>(inUIOSelector)</p></td>
<td><p>Check if object is exist by the UIO selector.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_FocusHighlight</span></code></a>(inUIOSelector)</p></td>
<td><p>Set focus and highlight (draw outline) the element (in app) by the UIO selector.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_GetChildList_UIOList</span></code></a>([…])</p></td>
<td><p>Get list of child UIOs by the parent UIOSelector</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_BitnessInt</span></code></a>(inSpecificationList)</p></td>
<td><p>Detect process bitness by the UI Object UIO Selector.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_BitnessStr</span></code></a>(inSpecificationList)</p></td>
<td><p>Detect process bitness by the UI Object UIO Selector.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIO</span></code></a>(inSpecificationList[, …])</p></td>
<td><p>Get the pywinauto object by the UIO selector.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIOActivityList</span></code></a>(inUIOSelector)</p></td>
<td><p>Get the list of the UI object activities</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIOInfo</span></code></a>(inUIOSelector)</p></td>
<td><p>Get the UIO dict of the attributes</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIOList</span></code></a>(inSpecificationList)</p></td>
<td><p>Get the UIO list by the selector</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Highlight</span></code></a>(inUIOSelector)</p></td>
<td><p>Highlight (draw outline) the element (in app) by the UIO selector.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_SafeOtherGet_Process</span></code></a>(inUIOSelector)</p></td>
<td><p>Safe get other process or None if destination app is the other/same bitness</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_SearchChildByMouse_UIO</span></code></a>(…)</p></td>
<td><p>UIOSelector (see description on the top of the document) #old name - AutomationSearchMouseElement</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_SearchChildByMouse_UIOTree</span></code></a>(…)</p></td>
<td><p>!!!!Safe call is included (you can set activity and UIDesktop will choose the bitness and return the result)!!!!!</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_TryRestore_Dict</span></code></a>(inSpecificationList)</p></td>
<td><p>Try to restore (maximize) window, if its minimized.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorsSecs_WaitAppear_List</span></code></a>(…[, …])</p></td>
<td><p>Wait for many UI object will appear in GUI for inWaitSecs seconds.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorsSecs_WaitDisappear_List</span></code></a>(…[, …])</p></td>
<td><p>Wait for many UI object will disappear in GUI for inWaitSecs seconds.</p></td>
</tr>
</tbody>
</table>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">Get_OSBitnessInt</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#Get_OSBitnessInt"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt" title="Ссылка на это определение"></a></dt>
<dd><p>Detect OS bitness.</p>
<dl class="field-list simple">
<dt class="field-odd">Результат</dt>
<dd class="field-odd"><p>int 32 or int 64</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">PWASpecification_Get_PWAApplication</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inControlSpecificationArray</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#PWASpecification_Get_PWAApplication"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication" title="Ссылка на это определение"></a></dt>
<dd><p>#Backend selection - attribute «backend» («win32» || «uia») in 1-st list element</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inControlSpecificationArray</strong> List of dict, dict in pywinauto.find_windows notation</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>process application object</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">PWASpecification_Get_UIO</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inControlSpecificationArray</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#PWASpecification_Get_UIO"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO" title="Ссылка на это определение"></a></dt>
<dd><p>#Backend def selection - attribute «backend» («win32» || «uia») in 1-st list element
#old name - GetControl</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inControlSpecificationArray</strong> List of dict, dict in pywinauto.find_windows notation</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>list of UIO object</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorSecs_WaitAppear_Bool</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorSecs_WaitAppear_Bool"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for UI object will appear in GUI for inWaitSecs seconds.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> UIOSelector. Example: [{«title»:»notepad»},{«title»:»OK»}]</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element appear in GUI</p></li>
</ul> </ul>
</dd> <p> .. v1.2.12 replace:: v1.2.12</p>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>True - UI object will appear. False - else case</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorSecs_WaitDisappear_Bool</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorSecs_WaitDisappear_Bool"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for UI object will disappear in GUI for inWaitSecs seconds.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> UIOSelector.
Example: [{«title»:»notepad»},{«title»:»OK»}]</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element disappear in GUI</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>True - UI object will disappear. False - else case</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorUIOActivity_Run_Dict</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em>, <em class="sig-param"><span class="n">inActionName</span></em>, <em class="sig-param"><span class="n">inArgumentList</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inkwArgumentObject</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorUIOActivity_Run_Dict"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict" title="Ссылка на это определение"></a></dt>
<dd><p>Run the activity in UIO (UI Object)</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p></li>
<li><p><strong>inActionName</strong> UIOActivity (name) activity name string from Pywinauto</p></li>
<li><p><strong>inArgumentList</strong> </p></li>
<li><p><strong>inkwArgumentObject</strong> </p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Exist_Bool</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Exist_Bool"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool" title="Ссылка на это определение"></a></dt>
<dd><p>Check if object is exist by the UIO selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> </p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>True - Object is exist. False - else case</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_FocusHighlight</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_FocusHighlight"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight" title="Ссылка на это определение"></a></dt>
<dd><p>Set focus and highlight (draw outline) the element (in app) by the UIO selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_GetChildList_UIOList</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inBackend</span><span class="o">=</span><span class="default_value">'win32'</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_GetChildList_UIOList"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList" title="Ссылка на это определение"></a></dt>
<dd><p>Get list of child UIOs by the parent UIOSelector</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p></li>
<li><p><strong>inBackend</strong> «win32» or «uia»</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_BitnessInt</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_BitnessInt"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt" title="Ссылка на это определение"></a></dt>
<dd><p>Detect process bitness by the UI Object UIO Selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inSpecificationList</strong> UIOSelector. Example: [{«title»:»notepad»},{«title»:»OK»}]</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>int 32 or int 64</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_BitnessStr</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_BitnessStr"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr" title="Ссылка на это определение"></a></dt>
<dd><p>Detect process bitness by the UI Object UIO Selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inSpecificationList</strong> UIOSelector. Example: [{«title»:»notepad»},{«title»:»OK»}]</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>str «32» or str «64»</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIO</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inElement</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inFlagRaiseException</span><span class="o">=</span><span class="default_value">True</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIO"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO" title="Ссылка на это определение"></a></dt>
<dd><p>Get the pywinauto object by the UIO selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> </p></li>
<li><p><strong>inElement</strong> </p></li>
<li><p><strong>inFlagRaiseException</strong> </p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIOActivityList</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIOActivityList"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList" title="Ссылка на это определение"></a></dt>
<dd><p>Get the list of the UI object activities</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIOInfo</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIOInfo"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo" title="Ссылка на это определение"></a></dt>
<dd><p>Get the UIO dict of the attributes</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIOList</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inElement</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inFlagRaiseException</span><span class="o">=</span><span class="default_value">True</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIOList"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList" title="Ссылка на это определение"></a></dt>
<dd><p>Get the UIO list by the selector</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> UIO Selector</p></li>
<li><p><strong>inElement</strong> Входной элемент - показатель, что не требуется выполнять коннект к процессу</p></li>
<li><p><strong>inFlagRaiseException</strong> Флаг True - выкинуть ошибку в случае обнаружении пустого списка</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Highlight</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Highlight"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight" title="Ссылка на это определение"></a></dt>
<dd><p>Highlight (draw outline) the element (in app) by the UIO selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_SafeOtherGet_Process</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_SafeOtherGet_Process"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process" title="Ссылка на это определение"></a></dt>
<dd><p>Safe get other process or None if destination app is the other/same bitness</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIO Selector of the UI object</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>None or process (of the other bitness)</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_SearchChildByMouse_UIO</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inElementSpecification</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_SearchChildByMouse_UIO"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO" title="Ссылка на это определение"></a></dt>
<dd><p>UIOSelector (see description on the top of the document)
#old name - AutomationSearchMouseElement</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inElementSpecification</strong> UIOSelector of the UI Object</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>pywinauto element wrapper instance or None</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_SearchChildByMouse_UIOTree</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_SearchChildByMouse_UIOTree"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree" title="Ссылка на это определение"></a></dt>
<dd><p>!!!!Safe call is included (you can set activity and UIDesktop will choose the bitness and return the result)!!!!!</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector of the UI Object</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p><p>?</p>
</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_TryRestore_Dict</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_TryRestore_Dict"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict" title="Ссылка на это определение"></a></dt>
<dd><p>Try to restore (maximize) window, if its minimized. (!IMPORTANT! When use UIA framework minimized windows doesnt appear by the UIOSelector. You need to try restore windows and after that try to get UIO)</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inSpecificationList</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorsSecs_WaitAppear_List</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationListList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em>, <em class="sig-param"><span class="n">inFlagWaitAllInMoment</span><span class="o">=</span><span class="default_value">False</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorsSecs_WaitAppear_List"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for many UI object will appear in GUI for inWaitSecs seconds.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationListList</strong> <p>UIOSelector list.
Example: [</p>
<blockquote>
<div><p>[{«title»:»notepad»},{«title»:»OK»}],
[{«title»:»notepad»},{«title»:»Cancel»}]</p>
</div></blockquote>
<p>]</p>
</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element appear in GUI</p></li>
<li><p><strong>inFlagWaitAllInMoment</strong> True - Wait all UI objects from the UIOSelector list to be appeared</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>List of index, which UI object UIO will be appeared. Example: [1] # Appear only UI object with UIO selector: [{«title»:»notepad»},{«title»:»Cancel»}]</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorsSecs_WaitDisappear_List</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationListList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em>, <em class="sig-param"><span class="n">inFlagWaitAllInMoment</span><span class="o">=</span><span class="default_value">False</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorsSecs_WaitDisappear_List"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for many UI object will disappear in GUI for inWaitSecs seconds.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationListList</strong> <p>UIOSelector list.
Example: [</p>
<blockquote>
<div><p>[{«title»:»notepad»},{«title»:»OK»}],
[{«title»:»notepad»},{«title»:»Cancel»}]</p>
</div></blockquote>
<p>]</p>
</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element disappear in GUI</p></li>
<li><p><strong>inFlagWaitAllInMoment</strong> True - Wait all UI objects from the UIOSelector list to be disappeared.</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>List of index, which UI object UIO will be disappeared. Example: [1] # Disappear only UI object with UIO selector: [{«title»:»notepad»},{«title»:»Cancel»}]</p>
</dd>
<dt class="field-odd">Результат</dt>
<dd class="field-odd"><p></p>
</dd>
</dl>
</dd></dl>
<div class="section" id="references">
<h2>References<a class="headerlink" href="#references" title="Ссылка на этот заголовок"></a></h2>
<p><a class="reference external" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> <a class="footnote-reference brackets" href="#id3" id="id4">1</a></p>
<dl class="footnote brackets">
<dt class="label" id="id3"><span class="brackets"><a class="fn-backref" href="#id4">1</a></span></dt>
<dd><p><a class="reference external" href="http://docutils.sourceforge.net/rst.html">http://docutils.sourceforge.net/rst.html</a></p>
</dd>
</dl>
<p> .. v1.2.12 replace:: v1.2.12
.. <a href="#id1"><span class="problematic" id="id2">|author|</span></a> replace:: Ivan Maslov &lt;<a class="reference external" href="mailto:ivan&#46;maslov&#37;&#52;&#48;unicodelabs&#46;ru">ivan<span>&#46;</span>maslov<span>&#64;</span>unicodelabs<span>&#46;</span>ru</a>&gt;</p>
<p></p> <p></p>
</div> </div>
</div> </div>
@ -665,8 +226,8 @@ Example: [</p>
</div> </div>
<footer> <footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="04_keyboard.html" class="btn btn-neutral float-right" title="4. Keyboard" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a> <a href="04_keyboard.html" class="btn btn-neutral float-right" title="4. Функции Keyboard" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="02_uidesktop.html" class="btn btn-neutral float-left" title="2. UIDesktop" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a> <a href="02_uidesktop.html" class="btn btn-neutral float-left" title="2. Функции UIDesktop" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a>
</div> </div>
<hr/> <hr/>

@ -7,7 +7,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>4. Keyboard &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title> <title>4. Функции Keyboard &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title>
@ -41,8 +41,8 @@
<link rel="index" title="Алфавитный указатель" href="../genindex.html" /> <link rel="index" title="Алфавитный указатель" href="../genindex.html" />
<link rel="search" title="Поиск" href="../search.html" /> <link rel="search" title="Поиск" href="../search.html" />
<link rel="next" title="5. Clipboard" href="05_clipboard.html" /> <link rel="next" title="5. Функции Clipboard" href="05_clipboard.html" />
<link rel="prev" title="3. UIWeb" href="03_uiweb.html" /> <link rel="prev" title="3. Функции UIWeb" href="03_uiweb.html" />
</head> </head>
<body class="wy-body-for-nav"> <body class="wy-body-for-nav">
@ -91,23 +91,26 @@
<ul> <ul>
<li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li> <li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li>
<li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li> <li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li>
<li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Права &amp; Контакты</a></li> <li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Лицензия &amp; Контакты</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p>
<ul class="current"> <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="01_Robot.html">1. Описание</a></li> <li class="toctree-l1"><a class="reference internal" href="01_Robot.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="02_Defs.html">2. Функции</a></li> <li class="toctree-l1"><a class="reference internal" href="02_uidesktop.html">2. Функции UIDesktop</a></li>
<li class="toctree-l1"><a class="reference internal" href="02_uidesktop.html">2. UIDesktop</a></li> <li class="toctree-l1"><a class="reference internal" href="03_uiweb.html">3. Функции UIWeb</a></li>
<li class="toctree-l1"><a class="reference internal" href="03_uiweb.html">3. UIWeb</a></li> <li class="toctree-l1 current"><a class="current reference internal" href="#">4. Функции Keyboard</a><ul>
<li class="toctree-l1 current"><a class="current reference internal" href="#">4. Keyboard</a><ul> <li class="toctree-l2"><a class="reference internal" href="#id1">Общее</a></li>
<li class="toctree-l2"><a class="reference internal" href="#references">References</a></li> <li class="toctree-l2"><a class="reference internal" href="#id2">Примеры использования</a></li>
<li class="toctree-l2"><a class="reference internal" href="#module-pyOpenRPA.Robot.Keyboard">Описание функций</a></li>
<li class="toctree-l2"><a class="reference internal" href="#id4">Коды клавиш</a></li>
<li class="toctree-l2"><a class="reference internal" href="#id5">Дополнительная функциональность</a></li>
<li class="toctree-l2"><a class="reference internal" href="#id7">Быстрая навигация</a></li>
</ul> </ul>
</li> </li>
<li class="toctree-l1"><a class="reference internal" href="05_clipboard.html">5. Clipboard</a></li> <li class="toctree-l1"><a class="reference internal" href="05_clipboard.html">5. Функции Clipboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="06_mouse.html">6. Mouse</a></li> <li class="toctree-l1"><a class="reference internal" href="06_mouse.html">6. Функции Mouse</a></li>
<li class="toctree-l1"><a class="reference internal" href="07_image.html">7. Image</a></li> <li class="toctree-l1"><a class="reference internal" href="07_image.html">7. Функции Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="08_HowToUse.html">8. Как использовать?</a></li> <li class="toctree-l1"><a class="reference internal" href="08_HowToUse.html">8. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="09_Dependencies.html">9. Зависимости</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p>
<ul> <ul>
@ -116,20 +119,19 @@
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Description</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Функции</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. gSettings Template</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. Настройки GSettings (шаблон)</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. How to use</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. UAC - User Access Control</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. Права доступа пользователей UAC</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/06_Defs%20Managers.html">6. Defs Managers</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Функции</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p> <p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Defs StopSafe</a></li> <li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Функции StopSafe</a></li>
</ul> </ul>
@ -178,7 +180,7 @@
<li><a href="../index.html" class="icon icon-home"></a> &raquo;</li> <li><a href="../index.html" class="icon icon-home"></a> &raquo;</li>
<li>4. Keyboard</li> <li>4. Функции Keyboard</li>
<li class="wy-breadcrumbs-aside"> <li class="wy-breadcrumbs-aside">
@ -198,463 +200,438 @@
<div itemprop="articleBody"> <div itemprop="articleBody">
<div class="section" id="keyboard"> <div class="section" id="keyboard">
<span id="module-robot-keyboard"></span><h1>4. Keyboard<a class="headerlink" href="#keyboard" title="Ссылка на этот заголовок"></a></h1> <span id="module-robot-keyboard"></span><h1>4. Функции Keyboard<a class="headerlink" href="#keyboard" title="Ссылка на этот заголовок"></a></h1>
<p>Here you can find the functions description for interaction with desktop GUI applications</p> <div class="section" id="id1">
<p>How to use both x32 and x64 python processes (it can be helpfully, if another app GUI is on another bitness than your app)</p> <h2>Общее<a class="headerlink" href="#id1" title="Ссылка на этот заголовок"></a></h2>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">UIDesktop</span> <p>Клавиатура - это главный текстовый инструмент, который обладает 100% точностью передачи данных. С его помощью можно отправлять сообщения, ожидать нажатия и выполнять различные комбинации клавиш. На этой странице представлена вся необходимая информация по управлению клавиатурой со стороны программного робота RPA.</p>
<span class="c1">#Section for robot init</span> <p>В отличие от многих RPA платформ, pyOpenRPA обладает функциями, которые не зависят от текущей раскладки клавиатуры. За счет этого надежность и стабильность программного робота существенно возрастает.</p>
<span class="n">lPyOpenRPA_SettingsDict</span> <span class="o">=</span> <span class="p">{</span> <p>ВНИМАНИЕ! ПРИ ВЫЗОВЕ ФУНКЦИЙ ОБРАЩАЙТЕ ВНИМАНИЕ НА РЕГИСТР.</p>
<span class="s2">&quot;Python32FullPath&quot;</span><span class="p">:</span> <span class="s2">&quot;..</span><span class="se">\\</span><span class="s2">Resources</span><span class="se">\\</span><span class="s2">WPy32-3720</span><span class="se">\\</span><span class="s2">python-3.7.2</span><span class="se">\\</span><span class="s2">python.exe&quot;</span><span class="p">,</span> <span class="c1">#Set from user: &quot;..\\Resources\\WPy32-3720\\python-3.7.2\\OpenRPARobotGUIx32.exe&quot;</span> </div>
<span class="s2">&quot;Python64FullPath&quot;</span><span class="p">:</span> <span class="s2">&quot;..</span><span class="se">\\</span><span class="s2">Resources</span><span class="se">\\</span><span class="s2">WPy64-3720</span><span class="se">\\</span><span class="s2">python-3.7.2.amd64</span><span class="se">\\</span><span class="s2">python.exe&quot;</span><span class="p">,</span> <span class="c1">#Set from user</span> <div class="section" id="id2">
<span class="s2">&quot;Python32ProcessName&quot;</span><span class="p">:</span> <span class="s2">&quot;pyOpenRPA_UIDesktopX32.exe&quot;</span><span class="p">,</span> <span class="c1">#Config set once</span> <h2>Примеры использования<a class="headerlink" href="#id2" title="Ссылка на этот заголовок"></a></h2>
<span class="s2">&quot;Python64ProcessName&quot;</span><span class="p">:</span> <span class="s2">&quot;pyOpenRPA_UIDesktopX64.exe&quot;</span> <span class="c1">#Config set once</span> <div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Keyboard: Взаимодействие с клавиатурой</span>
<span class="p">}</span> <span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Keyboard</span>
<span class="c1"># Init the pyOpenRPA configuration</span> <span class="n">Keyboard</span><span class="o">.</span><span class="n">HotkeyCombination</span><span class="p">(</span><span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_HOT_WIN_LEFT</span><span class="p">,</span><span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_ENG_R</span><span class="p">)</span>
<span class="n">UIDesktop</span><span class="o">.</span><span class="n">Utils</span><span class="o">.</span><span class="n">ProcessBitness</span><span class="o">.</span><span class="n">SettingsInit</span><span class="p">(</span><span class="n">lPyOpenRPA_SettingsDict</span><span class="p">)</span> <span class="n">Keyboard</span><span class="o">.</span><span class="n">Write</span><span class="p">(</span><span class="s2">&quot;cmd&quot;</span><span class="p">)</span>
<span class="c1"># Now you can use pyOpenRPA with both bitness.</span> <span class="n">Keyboard</span><span class="o">.</span><span class="n">Send</span><span class="p">(</span><span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_HOT_ENTER</span><span class="p">,</span> <span class="n">inWaitAfterSecFloat</span><span class="o">=</span><span class="mf">0.6</span><span class="p">)</span>
<span class="n">Keyboard</span><span class="o">.</span><span class="n">Write</span><span class="p">(</span><span class="s2">&quot;echo %time%&quot;</span><span class="p">)</span>
<span class="n">Keyboard</span><span class="o">.</span><span class="n">Send</span><span class="p">(</span><span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_HOT_ENTER</span><span class="p">)</span>
<span class="n">Keyboard</span><span class="o">.</span><span class="n">HotkeyCombination</span><span class="p">(</span><span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_HOT_CTRL_LEFT</span><span class="p">,</span> <span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_ENG_A</span><span class="p">,</span> <span class="n">inWaitAfterSecFloat</span><span class="o">=</span><span class="mf">0.6</span><span class="p">)</span>
<span class="n">Keyboard</span><span class="o">.</span><span class="n">HotkeyCombination</span><span class="p">(</span><span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_HOT_CTRL_LEFT</span><span class="p">,</span> <span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_ENG_C</span><span class="p">,</span> <span class="n">inWaitAfterSecFloat</span><span class="o">=</span><span class="mf">0.6</span><span class="p">)</span>
</pre></div> </pre></div>
</div> </div>
<span class="target" id="module-pyOpenRPA.Robot.UIDesktop"></span><p><strong>Functions:</strong></p> <p>Коды клавиш см. ниже</p>
</div>
<div class="section" id="module-pyOpenRPA.Robot.Keyboard">
<span id="id3"></span><h2>Описание функций<a class="headerlink" href="#module-pyOpenRPA.Robot.Keyboard" title="Ссылка на этот заголовок"></a></h2>
<p><strong>Functions:</strong></p>
<table class="longtable docutils align-default"> <table class="longtable docutils align-default">
<colgroup> <colgroup>
<col style="width: 10%" /> <col style="width: 10%" />
<col style="width: 90%" /> <col style="width: 90%" />
</colgroup> </colgroup>
<tbody> <tbody>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt" title="pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Get_OSBitnessInt</span></code></a>()</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.Keyboard.Down" title="pyOpenRPA.Robot.Keyboard.Down"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Down</span></code></a>(inKeyInt[, inWaitAfterSecFloat])</p></td>
<td><p>Detect OS bitness.</p></td> <td><p>Нажать (опустить) клавишу.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication" title="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication"><code class="xref py py-obj docutils literal notranslate"><span class="pre">PWASpecification_Get_PWAApplication</span></code></a>(…)</p></td>
<td><p>#Backend selection - attribute «backend» («win32» || «uia») in 1-st list element</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO" title="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO"><code class="xref py py-obj docutils literal notranslate"><span class="pre">PWASpecification_Get_UIO</span></code></a>(…)</p></td>
<td><p>#Backend def selection - attribute «backend» («win32» || «uia») in 1-st list element #old name - GetControl</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorSecs_WaitAppear_Bool</span></code></a>(…)</p></td>
<td><p>Wait for UI object will appear in GUI for inWaitSecs seconds.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorSecs_WaitDisappear_Bool</span></code></a>(…)</p></td>
<td><p>Wait for UI object will disappear in GUI for inWaitSecs seconds.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorUIOActivity_Run_Dict</span></code></a>(…[, …])</p></td>
<td><p>Run the activity in UIO (UI Object)</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Exist_Bool</span></code></a>(inUIOSelector)</p></td>
<td><p>Check if object is exist by the UIO selector.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_FocusHighlight</span></code></a>(inUIOSelector)</p></td>
<td><p>Set focus and highlight (draw outline) the element (in app) by the UIO selector.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_GetChildList_UIOList</span></code></a>([…])</p></td>
<td><p>Get list of child UIOs by the parent UIOSelector</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_BitnessInt</span></code></a>(inSpecificationList)</p></td>
<td><p>Detect process bitness by the UI Object UIO Selector.</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_BitnessStr</span></code></a>(inSpecificationList)</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.Keyboard.HotkeyCombination" title="pyOpenRPA.Robot.Keyboard.HotkeyCombination"><code class="xref py py-obj docutils literal notranslate"><span class="pre">HotkeyCombination</span></code></a>(*inKeyList[, …])</p></td>
<td><p>Detect process bitness by the UI Object UIO Selector.</p></td> <td><p>Получает перечень клавиш для одновременного нажатия.</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIO</span></code></a>(inSpecificationList[, …])</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.Keyboard.HotkeyCtrlA_CtrlC" title="pyOpenRPA.Robot.Keyboard.HotkeyCtrlA_CtrlC"><code class="xref py py-obj docutils literal notranslate"><span class="pre">HotkeyCtrlA_CtrlC</span></code></a>([inWaitAfterSecFloat])</p></td>
<td><p>Get the pywinauto object by the UIO selector.</p></td> <td><p>Выполнить выделение текста, после чего скопировать его в буфер обмена ВНИМАНИЕ! НЕ ЗАВИСИТ ОТ ТЕКУЩЕЙ РАСКЛАДКИ КЛАВИАТУРЫ</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIOActivityList</span></code></a>(inUIOSelector)</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.Keyboard.IsDown" title="pyOpenRPA.Robot.Keyboard.IsDown"><code class="xref py py-obj docutils literal notranslate"><span class="pre">IsDown</span></code></a>(inKeyInt)</p></td>
<td><p>Get the list of the UI object activities</p></td> <td><p>Проверить, опущена ли клавиша.</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIOInfo</span></code></a>(inUIOSelector)</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.Keyboard.Send" title="pyOpenRPA.Robot.Keyboard.Send"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Send</span></code></a>(inKeyInt[, inDoPressBool, …])</p></td>
<td><p>Get the UIO dict of the attributes</p></td> <td><p>Имитация нажатия/отпускания любой физической клавиши.</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIOList</span></code></a>(inSpecificationList)</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.Keyboard.Up" title="pyOpenRPA.Robot.Keyboard.Up"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Up</span></code></a>(inKeyInt[, inWaitAfterSecFloat])</p></td>
<td><p>Get the UIO list by the selector</p></td> <td><p>Отпустить (поднять) клавишу.</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Highlight</span></code></a>(inUIOSelector)</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.Keyboard.Wait" title="pyOpenRPA.Robot.Keyboard.Wait"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Wait</span></code></a>(inKeyInt[, inWaitAfterSecFloat])</p></td>
<td><p>Highlight (draw outline) the element (in app) by the UIO selector.</p></td> <td><p>Блокирует осуществление программы, пока данная обозначенная клавиша не будет нажата.</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_SafeOtherGet_Process</span></code></a>(inUIOSelector)</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.Keyboard.Write" title="pyOpenRPA.Robot.Keyboard.Write"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Write</span></code></a>(inTextStr[, inDelayFloat, …])</p></td>
<td><p>Safe get other process or None if destination app is the other/same bitness</p></td> <td><p>Печатает текст, который был передан в переменной inTextStr (поддерживает передачу в одной строке символов разного языка).</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_SearchChildByMouse_UIO</span></code></a>(…)</p></td> </tbody>
<td><p>UIOSelector (see description on the top of the document) #old name - AutomationSearchMouseElement</p></td> </table>
</tr> <p><strong>Data:</strong></p>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_SearchChildByMouse_UIOTree</span></code></a>(…)</p></td> <table class="longtable docutils align-default">
<td><p>!!!!Safe call is included (you can set activity and UIDesktop will choose the bitness and return the result)!!!!!</p></td> <colgroup>
</tr> <col style="width: 10%" />
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_TryRestore_Dict</span></code></a>(inSpecificationList)</p></td> <col style="width: 90%" />
<td><p>Try to restore (maximize) window, if its minimized.</p></td> </colgroup>
</tr> <tbody>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorsSecs_WaitAppear_List</span></code></a>(…[, …])</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.Keyboard.KEY_HOT_COLON" title="pyOpenRPA.Robot.Keyboard.KEY_HOT_COLON"><code class="xref py py-obj docutils literal notranslate"><span class="pre">KEY_HOT_COLON</span></code></a></p></td>
<td><p>Wait for many UI object will appear in GUI for inWaitSecs seconds.</p></td> <td><p></p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorsSecs_WaitDisappear_List</span></code></a>(…[, …])</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.Keyboard.KEY_RUS_" title="pyOpenRPA.Robot.Keyboard.KEY_RUS_Ж"><code class="xref py py-obj docutils literal notranslate"><span class="pre">KEY_RUS_Ж</span></code></a></p></td>
<td><p>Wait for many UI object will disappear in GUI for inWaitSecs seconds.</p></td> <td><p></p></td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
<dl class="py function"> <dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt"> <dt id="pyOpenRPA.Robot.Keyboard.Down">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">Get_OSBitnessInt</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#Get_OSBitnessInt"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt" title="Ссылка на это определение"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Robot.Keyboard.</code><code class="sig-name descname">Down</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inKeyInt</span><span class="p">:</span> <span class="n">int</span></em>, <em class="sig-param"><span class="n">inWaitAfterSecFloat</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">0.4</span></em><span class="sig-paren">)</span> &#x2192; None<a class="reference internal" href="../_modules/pyOpenRPA/Robot/Keyboard.html#Down"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.Keyboard.Down" title="Ссылка на это определение"></a></dt>
<dd><p>Detect OS bitness.</p> <dd><p>Нажать (опустить) клавишу. Если клавиша уже была опущена, то ничего не произойдет.</p>
<dl class="field-list simple"> <p>ВНИМАНИЕ! ПРИ ПОПЫТКЕ ПЕЧАТИ ТЕКСТА БУДЕТ УЧИТЫВАТЬ ТЕКУЩУЮ РАСКЛАДКУ КЛАВИАТУРЫ. ДЛЯ ПЕЧАТИ ТЕКСТА ИСПОЛЬЗУЙ Write!</p>
<dt class="field-odd">Результат</dt> <div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Keyboard: Взаимодействие с клавиатурой</span>
<dd class="field-odd"><p>int 32 or int 64</p> <span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Keyboard</span>
</dd> <span class="n">Keyboard</span><span class="o">.</span><span class="n">Down</span><span class="p">(</span><span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_ENG_A</span><span class="p">)</span> <span class="c1"># Отпустить клавишу A.</span>
</dl> </pre></div>
</dd></dl> </div>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">PWASpecification_Get_PWAApplication</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inControlSpecificationArray</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#PWASpecification_Get_PWAApplication"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication" title="Ссылка на это определение"></a></dt>
<dd><p>#Backend selection - attribute «backend» («win32» || «uia») in 1-st list element</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inControlSpecificationArray</strong> List of dict, dict in pywinauto.find_windows notation</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>process application object</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">PWASpecification_Get_UIO</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inControlSpecificationArray</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#PWASpecification_Get_UIO"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO" title="Ссылка на это определение"></a></dt>
<dd><p>#Backend def selection - attribute «backend» («win32» || «uia») in 1-st list element
#old name - GetControl</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inControlSpecificationArray</strong> List of dict, dict in pywinauto.find_windows notation</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>list of UIO object</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorSecs_WaitAppear_Bool</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorSecs_WaitAppear_Bool"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for UI object will appear in GUI for inWaitSecs seconds.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> UIOSelector. Example: [{«title»:»notepad»},{«title»:»OK»}]</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element appear in GUI</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>True - UI object will appear. False - else case</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorSecs_WaitDisappear_Bool</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorSecs_WaitDisappear_Bool"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for UI object will disappear in GUI for inWaitSecs seconds.</p>
<dl class="field-list simple"> <dl class="field-list simple">
<dt class="field-odd">Параметры</dt> <dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple"> <dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> UIOSelector. <li><p><strong>inKeyInt</strong> (<em>int</em>) Перечень клавиш см. в разделе «Коды клавиш». Пример: KEY_HOT_CTRL_LEFT, KEY_ENG_A</p></li>
Example: [{«title»:»notepad»},{«title»:»OK»}]</p></li> <li><p><strong>inWaitAfterSecFloat</strong> (<em>float</em><em>, </em><em>опциональный</em>) Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element disappear in GUI</p></li>
</ul> </ul>
</dd> </dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>True - UI object will disappear. False - else case</p>
</dd>
</dl> </dl>
</dd></dl> </dd></dl>
<dl class="py function"> <dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict"> <dt id="pyOpenRPA.Robot.Keyboard.HotkeyCombination">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorUIOActivity_Run_Dict</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em>, <em class="sig-param"><span class="n">inActionName</span></em>, <em class="sig-param"><span class="n">inArgumentList</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inkwArgumentObject</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorUIOActivity_Run_Dict"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict" title="Ссылка на это определение"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Robot.Keyboard.</code><code class="sig-name descname">HotkeyCombination</code><span class="sig-paren">(</span><em class="sig-param"><span class="o">*</span><span class="n">inKeyList</span></em>, <em class="sig-param"><span class="n">inDelaySecFloat</span><span class="o">=</span><span class="default_value">0.3</span></em>, <em class="sig-param"><span class="n">inWaitAfterSecFloat</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">0.4</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/Keyboard.html#HotkeyCombination"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.Keyboard.HotkeyCombination" title="Ссылка на это определение"></a></dt>
<dd><p>Run the activity in UIO (UI Object)</p> <dd><p>Получает перечень клавиш для одновременного нажатия. Между нажатиями программа ожидания время inDelaySecFloat
ВНИМАНИЕ! НЕ ЗАВИСИТ ОТ ТЕКУЩЕЙ РАСКЛАДКИ КЛАВИАТУРЫ</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Keyboard: Взаимодействие с клавиатурой</span>
<span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Keyboard</span>
<span class="n">Keyboard</span><span class="o">.</span><span class="n">HotkeyCombination</span><span class="p">(</span><span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_HOT_CTRL_LEFT</span><span class="p">,</span><span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_ENG_A</span><span class="p">)</span> <span class="c1"># Ctrl + a</span>
<span class="n">Keyboard</span><span class="o">.</span><span class="n">HotkeyCombination</span><span class="p">(</span><span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_HOT_CTRL_LEFT</span><span class="p">,</span><span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_ENG_C</span><span class="p">)</span> <span class="c1"># Ctrl + c</span>
<span class="n">Keyboard</span><span class="o">.</span><span class="n">HotkeyCombination</span><span class="p">(</span><span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_HOT_CTRL_LEFT</span><span class="p">,</span><span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_ENG_A</span><span class="p">)</span>
<span class="n">Keyboard</span><span class="o">.</span><span class="n">HotkeyCombination</span><span class="p">(</span><span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_HOT_ALT_LEFT</span><span class="p">,</span><span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_HOT_TAB</span><span class="p">,</span> <span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_HOT_TAB</span><span class="p">)</span>
</pre></div>
</div>
<dl class="field-list simple"> <dl class="field-list simple">
<dt class="field-odd">Параметры</dt> <dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple"> <dd class="field-odd"><ul class="simple">
<li><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p></li> <li><p><strong>inKeyList</strong> Список клавиш для одновременного нажатия. Перечень клавиш см. в разделе «Коды клавиш». Пример: KEY_HOT_CTRL_LEFT,KEY_ENG_A</p></li>
<li><p><strong>inActionName</strong> UIOActivity (name) activity name string from Pywinauto</p></li> <li><p><strong>inDelaySecFloat</strong> (<em>float</em><em>, </em><em>опциональный</em>) Интервал между нажатиями. Необходим в связи с тем, что операционной системе требуется время на реакцию на нажатие клавиш, по умолчанию: 0.3</p></li>
<li><p><strong>inArgumentList</strong> </p></li> <li><p><strong>inWaitAfterSecFloat</strong> (<em>float</em><em>, </em><em>опциональный</em>) Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)</p></li>
<li><p><strong>inkwArgumentObject</strong> </p></li>
</ul> </ul>
</dd> </dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl> </dl>
</dd></dl> </dd></dl>
<dl class="py function"> <dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool"> <dt id="pyOpenRPA.Robot.Keyboard.HotkeyCtrlA_CtrlC">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Exist_Bool</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Exist_Bool"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool" title="Ссылка на это определение"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Robot.Keyboard.</code><code class="sig-name descname">HotkeyCtrlA_CtrlC</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inWaitAfterSecFloat</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">0.4</span></em><span class="sig-paren">)</span> &#x2192; None<a class="reference internal" href="../_modules/pyOpenRPA/Robot/Keyboard.html#HotkeyCtrlA_CtrlC"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.Keyboard.HotkeyCtrlA_CtrlC" title="Ссылка на это определение"></a></dt>
<dd><p>Check if object is exist by the UIO selector.</p> <dd><p>Выполнить выделение текста, после чего скопировать его в буфер обмена
ВНИМАНИЕ! НЕ ЗАВИСИТ ОТ ТЕКУЩЕЙ РАСКЛАДКИ КЛАВИАТУРЫ</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Keyboard: Взаимодействие с клавиатурой</span>
<span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Keyboard</span>
<span class="n">Keyboard</span><span class="o">.</span><span class="n">HotkeyCtrlA_CtrlC</span><span class="p">()</span> <span class="c1"># Отправить команды: выделить все, скопировать в буфер обмена</span>
</pre></div>
</div>
<dl class="field-list simple"> <dl class="field-list simple">
<dt class="field-odd">Параметры</dt> <dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> </p> <dd class="field-odd"><p><strong>inWaitAfterSecFloat</strong> (<em>float</em><em>, </em><em>опциональный</em>) Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>True - Object is exist. False - else case</p>
</dd> </dd>
</dl> </dl>
</dd></dl> </dd></dl>
<dl class="py function"> <dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight"> <dt id="pyOpenRPA.Robot.Keyboard.IsDown">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_FocusHighlight</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_FocusHighlight"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight" title="Ссылка на это определение"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Robot.Keyboard.</code><code class="sig-name descname">IsDown</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inKeyInt</span><span class="p">:</span> <span class="n">int</span></em><span class="sig-paren">)</span> &#x2192; bool<a class="reference internal" href="../_modules/pyOpenRPA/Robot/Keyboard.html#IsDown"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.Keyboard.IsDown" title="Ссылка на это определение"></a></dt>
<dd><p>Set focus and highlight (draw outline) the element (in app) by the UIO selector.</p> <dd><p>Проверить, опущена ли клавиша. Вернет True если опущена; False если поднята.</p>
<p>ВНИМАНИЕ! ПРИ ПОПЫТКЕ ПЕЧАТИ ТЕКСТА БУДЕТ УЧИТЫВАТЬ ТЕКУЩУЮ РАСКЛАДКУ КЛАВИАТУРЫ. ДЛЯ ПЕЧАТИ ТЕКСТА ИСПОЛЬЗУЙ Write!</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Keyboard: Взаимодействие с клавиатурой</span>
<span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Keyboard</span>
<span class="n">lKeyAIsPressedBool</span> <span class="o">=</span> <span class="n">Keyboard</span><span class="o">.</span><span class="n">IsDown</span><span class="p">(</span><span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_ENG_A</span><span class="p">)</span> <span class="c1"># Проверить, опущена ли клавиша A.</span>
</pre></div>
</div>
<dl class="field-list simple"> <dl class="field-list simple">
<dt class="field-odd">Параметры</dt> <dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p> <dd class="field-odd"><p><strong>inKeyInt</strong> (<em>int</em>) Перечень клавиш см. в разделе «Коды клавиш». Пример: KEY_HOT_CTRL_LEFT, KEY_ENG_A</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd> </dd>
</dl> </dl>
</dd></dl> </dd></dl>
<dl class="py function"> <dl class="py data">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList"> <dt id="pyOpenRPA.Robot.Keyboard.KEY_HOT_COLON">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_GetChildList_UIOList</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inBackend</span><span class="o">=</span><span class="default_value">'win32'</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_GetChildList_UIOList"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList" title="Ссылка на это определение"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Robot.Keyboard.</code><code class="sig-name descname">KEY_HOT_COLON</code><em class="property"> = 39</em><a class="headerlink" href="#pyOpenRPA.Robot.Keyboard.KEY_HOT_COLON" title="Ссылка на это определение"></a></dt>
<dd><p>Get list of child UIOs by the parent UIOSelector</p> <dd></dd></dl>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p></li>
<li><p><strong>inBackend</strong> «win32» or «uia»</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function"> <dl class="py data">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt"> <dt id="pyOpenRPA.Robot.Keyboard.KEY_RUS_">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_BitnessInt</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_BitnessInt"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt" title="Ссылка на это определение"></a></dt> <span id="pyOpenRPA.Robot.Keyboard.KEY_RUS_Ж"></span><code class="sig-prename descclassname">pyOpenRPA.Robot.Keyboard.</code><code class="sig-name descname">KEY_RUS_Ж</code><em class="property"> = 39</em><a class="headerlink" href="#pyOpenRPA.Robot.Keyboard.KEY_RUS_" title="Ссылка на это определение"></a></dt>
<dd><p>Detect process bitness by the UI Object UIO Selector.</p> <dd></dd></dl>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inSpecificationList</strong> UIOSelector. Example: [{«title»:»notepad»},{«title»:»OK»}]</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>int 32 or int 64</p>
</dd>
</dl>
</dd></dl>
<dl class="py function"> <dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr"> <dt id="pyOpenRPA.Robot.Keyboard.Send">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_BitnessStr</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_BitnessStr"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr" title="Ссылка на это определение"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Robot.Keyboard.</code><code class="sig-name descname">Send</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inKeyInt</span><span class="p">:</span> <span class="n">int</span></em>, <em class="sig-param"><span class="n">inDoPressBool</span><span class="p">:</span> <span class="n">bool</span> <span class="o">=</span> <span class="default_value">True</span></em>, <em class="sig-param"><span class="n">inDoReleaseBool</span><span class="p">:</span> <span class="n">bool</span> <span class="o">=</span> <span class="default_value">True</span></em>, <em class="sig-param"><span class="n">inWaitAfterSecFloat</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">0.4</span></em><span class="sig-paren">)</span> &#x2192; None<a class="reference internal" href="../_modules/pyOpenRPA/Robot/Keyboard.html#Send"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.Keyboard.Send" title="Ссылка на это определение"></a></dt>
<dd><p>Detect process bitness by the UI Object UIO Selector.</p> <dd><p>Имитация нажатия/отпускания любой физической клавиши. Посылает событие в операционную систему, которые выполняет нажатие и отпускание данной клавиши</p>
<dl class="field-list simple"> <p>ВНИМАНИЕ! ПРИ ПОПЫТКЕ ПЕЧАТИ ТЕКСТА БУДЕТ УЧИТЫВАТЬ ТЕКУЩУЮ РАСКЛАДКУ КЛАВИАТУРЫ. ДЛЯ ПЕЧАТИ ТЕКСТА ИСПОЛЬЗУЙ Write!</p>
<dt class="field-odd">Параметры</dt> <div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Keyboard: Взаимодействие с клавиатурой</span>
<dd class="field-odd"><p><strong>inSpecificationList</strong> UIOSelector. Example: [{«title»:»notepad»},{«title»:»OK»}]</p> <span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Keyboard</span>
</dd> <span class="n">Keyboard</span><span class="o">.</span><span class="n">Send</span><span class="p">(</span><span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_ENG_A</span><span class="p">)</span> <span class="c1"># Нажать клавишу A. Если будет активна русская раскладка, то будет выведена буква ф.</span>
<dt class="field-even">Результат</dt> </pre></div>
<dd class="field-even"><p>str «32» or str «64»</p> </div>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIO</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inElement</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inFlagRaiseException</span><span class="o">=</span><span class="default_value">True</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIO"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO" title="Ссылка на это определение"></a></dt>
<dd><p>Get the pywinauto object by the UIO selector.</p>
<dl class="field-list simple"> <dl class="field-list simple">
<dt class="field-odd">Параметры</dt> <dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple"> <dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> </p></li> <li><p><strong>inKeyInt</strong> (<em>int</em>) Перечень клавиш см. в разделе «Коды клавиш». Пример: KEY_HOT_CTRL_LEFT,KEY_ENG_A</p></li>
<li><p><strong>inElement</strong> </p></li> <li><p><strong>inDoPressBool</strong> (<em>bool</em><em>, </em><em>опциональный</em>) Выполнить событие нажатия клавиши, По умолчанию True</p></li>
<li><p><strong>inFlagRaiseException</strong> </p></li> <li><p><strong>inDoReleaseBool</strong> (<em>bool</em><em>, </em><em>опциональный</em>) Выполнить событие отпускания клавиши, По умолчанию True</p></li>
<li><p><strong>inWaitAfterSecFloat</strong> (<em>float</em><em>, </em><em>опциональный</em>) Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)</p></li>
</ul> </ul>
</dd> </dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIOActivityList</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIOActivityList"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList" title="Ссылка на это определение"></a></dt>
<dd><p>Get the list of the UI object activities</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIOInfo</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIOInfo"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo" title="Ссылка на это определение"></a></dt>
<dd><p>Get the UIO dict of the attributes</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl> </dl>
</dd></dl> </dd></dl>
<dl class="py function"> <dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList"> <dt id="pyOpenRPA.Robot.Keyboard.Up">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIOList</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inElement</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inFlagRaiseException</span><span class="o">=</span><span class="default_value">True</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIOList"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList" title="Ссылка на это определение"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Robot.Keyboard.</code><code class="sig-name descname">Up</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inKeyInt</span><span class="p">:</span> <span class="n">int</span></em>, <em class="sig-param"><span class="n">inWaitAfterSecFloat</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">0.4</span></em><span class="sig-paren">)</span> &#x2192; None<a class="reference internal" href="../_modules/pyOpenRPA/Robot/Keyboard.html#Up"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.Keyboard.Up" title="Ссылка на это определение"></a></dt>
<dd><p>Get the UIO list by the selector</p> <dd><p>Отпустить (поднять) клавишу. Если клавиша уже была поднята, то ничего не произойдет.</p>
<p>ВНИМАНИЕ! ПРИ ПОПЫТКЕ ПЕЧАТИ ТЕКСТА БУДЕТ УЧИТЫВАТЬ ТЕКУЩУЮ РАСКЛАДКУ КЛАВИАТУРЫ. ДЛЯ ПЕЧАТИ ТЕКСТА ИСПОЛЬЗУЙ Write!</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Keyboard: Взаимодействие с клавиатурой</span>
<span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Keyboard</span>
<span class="n">Keyboard</span><span class="o">.</span><span class="n">Up</span><span class="p">(</span><span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_ENG_A</span><span class="p">)</span> <span class="c1"># Отпустить клавишу A.</span>
</pre></div>
</div>
<dl class="field-list simple"> <dl class="field-list simple">
<dt class="field-odd">Параметры</dt> <dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple"> <dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> UIO Selector</p></li> <li><p><strong>inKeyInt</strong> (<em>int</em>) Перечень клавиш см. в разделе «Коды клавиш». Пример: KEY_HOT_CTRL_LEFT, KEY_ENG_A</p></li>
<li><p><strong>inElement</strong> Входной элемент - показатель, что не требуется выполнять коннект к процессу</p></li> <li><p><strong>inWaitAfterSecFloat</strong> (<em>float</em><em>, </em><em>опциональный</em>) Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)</p></li>
<li><p><strong>inFlagRaiseException</strong> Флаг True - выкинуть ошибку в случае обнаружении пустого списка</p></li>
</ul> </ul>
</dd> </dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Highlight</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Highlight"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight" title="Ссылка на это определение"></a></dt>
<dd><p>Highlight (draw outline) the element (in app) by the UIO selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_SafeOtherGet_Process</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_SafeOtherGet_Process"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process" title="Ссылка на это определение"></a></dt>
<dd><p>Safe get other process or None if destination app is the other/same bitness</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIO Selector of the UI object</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>None or process (of the other bitness)</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_SearchChildByMouse_UIO</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inElementSpecification</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_SearchChildByMouse_UIO"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO" title="Ссылка на это определение"></a></dt>
<dd><p>UIOSelector (see description on the top of the document)
#old name - AutomationSearchMouseElement</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inElementSpecification</strong> UIOSelector of the UI Object</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>pywinauto element wrapper instance or None</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_SearchChildByMouse_UIOTree</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_SearchChildByMouse_UIOTree"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree" title="Ссылка на это определение"></a></dt>
<dd><p>!!!!Safe call is included (you can set activity and UIDesktop will choose the bitness and return the result)!!!!!</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector of the UI Object</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p><p>?</p>
</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_TryRestore_Dict</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_TryRestore_Dict"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict" title="Ссылка на это определение"></a></dt>
<dd><p>Try to restore (maximize) window, if its minimized. (!IMPORTANT! When use UIA framework minimized windows doesnt appear by the UIOSelector. You need to try restore windows and after that try to get UIO)</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inSpecificationList</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl> </dl>
</dd></dl> </dd></dl>
<dl class="py function"> <dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List"> <dt id="pyOpenRPA.Robot.Keyboard.Wait">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorsSecs_WaitAppear_List</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationListList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em>, <em class="sig-param"><span class="n">inFlagWaitAllInMoment</span><span class="o">=</span><span class="default_value">False</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorsSecs_WaitAppear_List"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List" title="Ссылка на это определение"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Robot.Keyboard.</code><code class="sig-name descname">Wait</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inKeyInt</span><span class="p">:</span> <span class="n">int</span></em>, <em class="sig-param"><span class="n">inWaitAfterSecFloat</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">0.4</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/Keyboard.html#Wait"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.Keyboard.Wait" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for many UI object will appear in GUI for inWaitSecs seconds.</p> <dd><p>Блокирует осуществление программы, пока данная обозначенная клавиша не будет нажата.
ВНИМАНИЕ! НЕ ЗАВИСИТ ОТ ТЕКУЩЕЙ РАСКЛАДКИ КЛАВИАТУРЫ. ОЖИДАЕТ НАЖАТИЕ СООТВЕТСВУЮЩЕЙ ФИЗИЧЕСКОЙ КЛАВИШИ</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Keyboard: Взаимодействие с клавиатурой</span>
<span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Keyboard</span>
<span class="n">Keyboard</span><span class="o">.</span><span class="n">Wait</span><span class="p">(</span><span class="n">Keyboard</span><span class="o">.</span><span class="n">KEY_ENG_A</span><span class="p">)</span> <span class="c1"># Ждать нажатие клавиши A.</span>
</pre></div>
</div>
<dl class="field-list simple"> <dl class="field-list simple">
<dt class="field-odd">Параметры</dt> <dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple"> <dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationListList</strong> <p>UIOSelector list. <li><p><strong>inKeyInt</strong> (<em>int</em>) Перечень клавиш см. в разделе «Коды клавиш». Пример: KEY_HOT_CTRL_LEFT,KEY_ENG_A</p></li>
Example: [</p> <li><p><strong>inWaitAfterSecFloat</strong> (<em>float</em><em>, </em><em>опциональный</em>) Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)</p></li>
<blockquote>
<div><p>[{«title»:»notepad»},{«title»:»OK»}],
[{«title»:»notepad»},{«title»:»Cancel»}]</p>
</div></blockquote>
<p>]</p>
</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element appear in GUI</p></li>
<li><p><strong>inFlagWaitAllInMoment</strong> True - Wait all UI objects from the UIOSelector list to be appeared</p></li>
</ul> </ul>
</dd> </dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>List of index, which UI object UIO will be appeared. Example: [1] # Appear only UI object with UIO selector: [{«title»:»notepad»},{«title»:»Cancel»}]</p>
</dd>
</dl> </dl>
</dd></dl> </dd></dl>
<dl class="py function"> <dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List"> <dt id="pyOpenRPA.Robot.Keyboard.Write">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorsSecs_WaitDisappear_List</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationListList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em>, <em class="sig-param"><span class="n">inFlagWaitAllInMoment</span><span class="o">=</span><span class="default_value">False</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorsSecs_WaitDisappear_List"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List" title="Ссылка на это определение"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Robot.Keyboard.</code><code class="sig-name descname">Write</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inTextStr</span><span class="p">:</span> <span class="n">str</span></em>, <em class="sig-param"><span class="n">inDelayFloat</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">0</span></em>, <em class="sig-param"><span class="n">inRestoreStateAfterBool</span><span class="p">:</span> <span class="n">bool</span> <span class="o">=</span> <span class="default_value">True</span></em>, <em class="sig-param"><span class="n">inExactBool</span><span class="p">:</span> <span class="n">Optional<span class="p">[</span>bool<span class="p">]</span></span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inWaitAfterSecFloat</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">0.4</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/Keyboard.html#Write"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.Keyboard.Write" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for many UI object will disappear in GUI for inWaitSecs seconds.</p> <dd><p>Печатает текст, который был передан в переменной inTextStr (поддерживает передачу в одной строке символов разного языка). Не зависит от текущей раскладки клавиатуры! Посылает искусственные клавишные события в ОС, моделируя печать данного текста. Знаки, не доступные на клавиатуре, напечатаны как явный unicode знаки, использующие определенную для ОС функциональность, такие как alt+codepoint.
Чтобы гарантировать текстовую целостность, все в настоящее время нажатые ключи выпущены прежде текст напечатан, и модификаторы восстановлены впоследствии.</p>
<p>ВНИМАНИЕ! ПЕЧАТАЕТ ЛЮБУЮ СТРОКУ, ДАЖЕ В СОЧЕТАНИИ НЕСКОЛЬКИХ ЯЗЫКОВ ОДНОВРЕМЕННО. ДЛЯ РАБОТЫ С ГОРЯЧИМИ КЛАВИШАМИ ИСПОЛЬЗУЙ ФУНКЦИЮ Send, Up, Down, HotkeyCombination</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Keyboard: Взаимодействие с клавиатурой</span>
<span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Keyboard</span>
<span class="n">Keyboard</span><span class="o">.</span><span class="n">Write</span><span class="p">(</span><span class="s2">&quot;Привет мой милый мир! Hello my dear world!&quot;</span><span class="p">)</span>
</pre></div>
</div>
<dl class="field-list simple"> <dl class="field-list simple">
<dt class="field-odd">Параметры</dt> <dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple"> <dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationListList</strong> <p>UIOSelector list. <li><p><strong>inTextStr</strong> (<em>str</em>) Текст, отправляемый на печать. Не зависит от текущей раскладки клавиатуры!</p></li>
Example: [</p> <li><p><strong>inDelayFloat</strong> (<em>float</em><em>, </em><em>опциональный</em>) Число секунд, которое ожидать между нажатиями. По умолчанию 0</p></li>
<blockquote> <li><p><strong>inRestoreStateAfterBool</strong> (<em>bool</em><em>, </em><em>опциональный</em>) Может использоваться, чтобы восстановить регистр нажатых ключей после того, как текст напечатан, т.е. нажимает ключи, которые были выпущены в начало.</p></li>
<div><p>[{«title»:»notepad»},{«title»:»OK»}], <li><p><strong>inExactBool</strong> (<em>bool</em><em>, </em><em>опциональный</em>) Печатает все знаки как явный unicode. Необязательный параметр</p></li>
[{«title»:»notepad»},{«title»:»Cancel»}]</p> <li><p><strong>inWaitAfterSecFloat</strong> (<em>float</em><em>, </em><em>опциональный</em>) Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)</p></li>
</div></blockquote>
<p>]</p>
</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element disappear in GUI</p></li>
<li><p><strong>inFlagWaitAllInMoment</strong> True - Wait all UI objects from the UIOSelector list to be disappeared.</p></li>
</ul> </ul>
</dd> </dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>List of index, which UI object UIO will be disappeared. Example: [1] # Disappear only UI object with UIO selector: [{«title»:»notepad»},{«title»:»Cancel»}]</p>
</dd>
<dt class="field-odd">Результат</dt>
<dd class="field-odd"><p></p>
</dd>
</dl> </dl>
</dd></dl> </dd></dl>
<div class="section" id="references"> </div>
<h2>References<a class="headerlink" href="#references" title="Ссылка на этот заголовок"></a></h2> <div class="section" id="id4">
<p><a class="reference external" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> <a class="footnote-reference brackets" href="#id3" id="id4">1</a></p> <h2>Коды клавиш<a class="headerlink" href="#id4" title="Ссылка на этот заголовок"></a></h2>
<dl class="footnote brackets"> <p>Ниже представлены коды горячих клавиш, а также символов русской и английской раскладки.</p>
<dt class="label" id="id3"><span class="brackets"><a class="fn-backref" href="#id4">1</a></span></dt> <div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># ШЕСТНАДЦАТИРИЧНЫЙ СКАН-КОД В РУССКОЙ РАСКЛАДКЕ (НЕЗАВИСИМО ОТ ВЫБРАННОГО ЯЗЫКА НА КЛАВИАТУРЕ)</span>
<dd><p><a class="reference external" href="http://docutils.sourceforge.net/rst.html">http://docutils.sourceforge.net/rst.html</a></p> <span class="c1"># ОТОБРАЖЕНИЕ СКАН КОДОВ НА КЛАВИАТУРЕ https://snipp.ru/handbk/scan-codes</span>
</dd>
</dl> <span class="n">KEY_RUS_Ф</span> <span class="o">=</span> <span class="mh">0x1E</span> <span class="c1">#A</span>
<p> .. v1.2.12 replace:: v1.2.12 <span class="n">KEY_RUS_И</span> <span class="o">=</span> <span class="mh">0x30</span> <span class="c1">#B</span>
.. <a href="#id1"><span class="problematic" id="id2">|author|</span></a> replace:: Ivan Maslov &lt;<a class="reference external" href="mailto:ivan&#46;maslov&#37;&#52;&#48;unicodelabs&#46;ru">ivan<span>&#46;</span>maslov<span>&#64;</span>unicodelabs<span>&#46;</span>ru</a>&gt;</p> <span class="n">KEY_RUS_С</span> <span class="o">=</span> <span class="mh">0x2E</span> <span class="c1">#C</span>
<span class="n">KEY_RUS_В</span> <span class="o">=</span> <span class="mh">0x20</span> <span class="c1">#D</span>
<span class="n">KEY_RUS_У</span> <span class="o">=</span> <span class="mh">0x12</span> <span class="c1">#E</span>
<span class="n">KEY_RUS_А</span> <span class="o">=</span> <span class="mh">0x21</span> <span class="c1">#F</span>
<span class="n">KEY_RUS_П</span> <span class="o">=</span> <span class="mh">0x22</span> <span class="c1">#G</span>
<span class="n">KEY_RUS_Р</span> <span class="o">=</span> <span class="mh">0x23</span> <span class="c1">#H</span>
<span class="n">KEY_RUS_Ш</span> <span class="o">=</span> <span class="mh">0x17</span> <span class="c1">#I</span>
<span class="n">KEY_RUS_О</span> <span class="o">=</span> <span class="mh">0x24</span> <span class="c1">#J</span>
<span class="n">KEY_RUS_Л</span> <span class="o">=</span> <span class="mh">0x25</span> <span class="c1">#K</span>
<span class="n">KEY_RUS_Д</span> <span class="o">=</span> <span class="mh">0x26</span> <span class="c1">#L</span>
<span class="n">KEY_RUS_Ь</span> <span class="o">=</span> <span class="mh">0x32</span> <span class="c1">#M</span>
<span class="n">KEY_RUS_Т</span> <span class="o">=</span> <span class="mh">0x31</span> <span class="c1">#N</span>
<span class="n">KEY_RUS_Щ</span> <span class="o">=</span> <span class="mh">0x18</span> <span class="c1">#O</span>
<span class="n">KEY_RUS_З</span> <span class="o">=</span> <span class="mh">0x19</span> <span class="c1">#P</span>
<span class="n">KEY_RUS_Й</span> <span class="o">=</span> <span class="mh">0x10</span> <span class="c1">#Q</span>
<span class="n">KEY_RUS_К</span> <span class="o">=</span> <span class="mh">0x13</span> <span class="c1">#R</span>
<span class="n">KEY_RUS_Ы</span> <span class="o">=</span> <span class="mh">0x1F</span> <span class="c1">#S</span>
<span class="n">KEY_RUS_Е</span> <span class="o">=</span> <span class="mh">0x14</span> <span class="c1">#T</span>
<span class="n">KEY_RUS_Г</span> <span class="o">=</span> <span class="mh">0x16</span> <span class="c1">#U</span>
<span class="n">KEY_RUS_М</span> <span class="o">=</span> <span class="mh">0x2F</span> <span class="c1">#V</span>
<span class="n">KEY_RUS_Ц</span> <span class="o">=</span> <span class="mh">0x11</span> <span class="c1">#W</span>
<span class="n">KEY_RUS_Ч</span> <span class="o">=</span> <span class="mh">0x2D</span> <span class="c1">#X</span>
<span class="n">KEY_RUS_Н</span> <span class="o">=</span> <span class="mh">0x15</span> <span class="c1">#Y</span>
<span class="n">KEY_RUS_Я</span> <span class="o">=</span> <span class="mh">0x2C</span> <span class="c1">#Z</span>
<span class="n">KEY_RUS_Ё</span> <span class="o">=</span> <span class="mh">0x29</span> <span class="c1">#~</span>
<span class="n">KEY_RUS_Ж</span> <span class="o">=</span> <span class="mh">0x27</span> <span class="c1">#:</span>
<span class="n">KEY_RUS_Б</span> <span class="o">=</span> <span class="mh">0x33</span> <span class="c1">#&lt;</span>
<span class="n">KEY_RUS_Ю</span> <span class="o">=</span> <span class="mh">0x34</span> <span class="c1">#&gt;</span>
<span class="n">KEY_RUS_Х</span> <span class="o">=</span> <span class="mh">0x1A</span> <span class="c1">#[</span>
<span class="n">KEY_RUS_Ъ</span> <span class="o">=</span> <span class="mh">0x1B</span> <span class="c1">#]</span>
<span class="n">KEY_RUS_Э</span> <span class="o">=</span> <span class="mh">0x28</span> <span class="c1">#&#39;</span>
<span class="n">KEY_ENG_A</span> <span class="o">=</span> <span class="mh">0x1E</span> <span class="c1">#A</span>
<span class="n">KEY_ENG_B</span> <span class="o">=</span> <span class="mh">0x30</span> <span class="c1">#B</span>
<span class="n">KEY_ENG_C</span> <span class="o">=</span> <span class="mh">0x2E</span> <span class="c1">#C</span>
<span class="n">KEY_ENG_D</span> <span class="o">=</span> <span class="mh">0x20</span> <span class="c1">#D</span>
<span class="n">KEY_ENG_E</span> <span class="o">=</span> <span class="mh">0x12</span> <span class="c1">#E</span>
<span class="n">KEY_ENG_F</span> <span class="o">=</span> <span class="mh">0x21</span> <span class="c1">#F</span>
<span class="n">KEY_ENG_G</span> <span class="o">=</span> <span class="mh">0x22</span> <span class="c1">#G</span>
<span class="n">KEY_ENG_H</span> <span class="o">=</span> <span class="mh">0x23</span> <span class="c1">#H</span>
<span class="n">KEY_ENG_I</span> <span class="o">=</span> <span class="mh">0x17</span> <span class="c1">#I</span>
<span class="n">KEY_ENG_J</span> <span class="o">=</span> <span class="mh">0x24</span> <span class="c1">#J</span>
<span class="n">KEY_ENG_K</span> <span class="o">=</span> <span class="mh">0x25</span> <span class="c1">#K</span>
<span class="n">KEY_ENG_L</span> <span class="o">=</span> <span class="mh">0x26</span> <span class="c1">#L</span>
<span class="n">KEY_ENG_M</span> <span class="o">=</span> <span class="mh">0x32</span> <span class="c1">#M</span>
<span class="n">KEY_ENG_N</span> <span class="o">=</span> <span class="mh">0x31</span> <span class="c1">#N</span>
<span class="n">KEY_ENG_O</span> <span class="o">=</span> <span class="mh">0x18</span> <span class="c1">#O</span>
<span class="n">KEY_ENG_P</span> <span class="o">=</span> <span class="mh">0x19</span> <span class="c1">#P</span>
<span class="n">KEY_ENG_Q</span> <span class="o">=</span> <span class="mh">0x10</span> <span class="c1">#Q</span>
<span class="n">KEY_ENG_R</span> <span class="o">=</span> <span class="mh">0x13</span> <span class="c1">#R</span>
<span class="n">KEY_ENG_S</span> <span class="o">=</span> <span class="mh">0x1F</span> <span class="c1">#S</span>
<span class="n">KEY_ENG_T</span> <span class="o">=</span> <span class="mh">0x14</span> <span class="c1">#T</span>
<span class="n">KEY_ENG_U</span> <span class="o">=</span> <span class="mh">0x16</span> <span class="c1">#U</span>
<span class="n">KEY_ENG_V</span> <span class="o">=</span> <span class="mh">0x2F</span> <span class="c1">#V</span>
<span class="n">KEY_ENG_W</span> <span class="o">=</span> <span class="mh">0x11</span> <span class="c1">#W</span>
<span class="n">KEY_ENG_X</span> <span class="o">=</span> <span class="mh">0x2D</span> <span class="c1">#X</span>
<span class="n">KEY_ENG_Y</span> <span class="o">=</span> <span class="mh">0x15</span> <span class="c1">#Y</span>
<span class="n">KEY_ENG_Z</span> <span class="o">=</span> <span class="mh">0x2C</span> <span class="c1">#Z</span>
<span class="n">KEY_HOT_NUMPAD_0</span> <span class="o">=</span> <span class="mh">0x52</span>
<span class="n">KEY_HOT_NUMPAD_1</span> <span class="o">=</span> <span class="mh">0x4F</span>
<span class="n">KEY_HOT_NUMPAD_2</span> <span class="o">=</span> <span class="mh">0x50</span>
<span class="n">KEY_HOT_NUMPAD_3</span> <span class="o">=</span> <span class="mh">0x51</span>
<span class="n">KEY_HOT_NUMPAD_4</span> <span class="o">=</span> <span class="mh">0x4B</span>
<span class="n">KEY_HOT_NUMPAD_5</span> <span class="o">=</span> <span class="mh">0x4C</span>
<span class="n">KEY_HOT_NUMPAD_6</span> <span class="o">=</span> <span class="mh">0x4D</span>
<span class="n">KEY_HOT_NUMPAD_7</span> <span class="o">=</span> <span class="mh">0x47</span>
<span class="n">KEY_HOT_NUMPAD_8</span> <span class="o">=</span> <span class="mh">0x48</span>
<span class="n">KEY_HOT_NUMPAD_9</span> <span class="o">=</span> <span class="mh">0x49</span>
<span class="n">KEY_HOT_NUMPAD_ASTERISK</span> <span class="o">=</span> <span class="mh">0x37</span> <span class="c1">#*</span>
<span class="n">KEY_HOT_NUMPAD_PLUS</span> <span class="o">=</span> <span class="mh">0x4E</span>
<span class="n">KEY_HOT_NUMPAD_MINUS</span> <span class="o">=</span> <span class="mh">0x4A</span>
<span class="n">KEY_HOT_NUMPAD_DELETE</span> <span class="o">=</span> <span class="mh">0x53</span>
<span class="n">KEY_HOT_NUMPAD_SOLIDUS</span> <span class="o">=</span> <span class="mh">0x35</span> <span class="c1">#/</span>
<span class="n">KEY_HOT_NUMPAD_ENTER</span> <span class="o">=</span> <span class="mh">0x11c</span>
<span class="n">KEY_HOT_F1</span> <span class="o">=</span> <span class="mh">0x3B</span>
<span class="n">KEY_HOT_F2</span> <span class="o">=</span> <span class="mh">0x3C</span>
<span class="n">KEY_HOT_F3</span> <span class="o">=</span> <span class="mh">0x3D</span>
<span class="n">KEY_HOT_F4</span> <span class="o">=</span> <span class="mh">0x3E</span>
<span class="n">KEY_HOT_F5</span> <span class="o">=</span> <span class="mh">0x3F</span>
<span class="n">KEY_HOT_F6</span> <span class="o">=</span> <span class="mh">0x40</span>
<span class="n">KEY_HOT_F7</span> <span class="o">=</span> <span class="mh">0x41</span>
<span class="n">KEY_HOT_F8</span> <span class="o">=</span> <span class="mh">0x42</span>
<span class="n">KEY_HOT_F9</span> <span class="o">=</span> <span class="mh">0x43</span>
<span class="n">KEY_HOT_F10</span> <span class="o">=</span> <span class="mh">0x44</span>
<span class="n">KEY_HOT_F11</span> <span class="o">=</span> <span class="mh">0x57</span>
<span class="n">KEY_HOT_F12</span> <span class="o">=</span> <span class="mh">0x58</span>
<span class="n">KEY_HOT_F13</span> <span class="o">=</span> <span class="mh">0x7C</span>
<span class="n">KEY_HOT_F14</span> <span class="o">=</span> <span class="mh">0x7D</span>
<span class="n">KEY_HOT_F15</span> <span class="o">=</span> <span class="mh">0x7E</span>
<span class="n">KEY_HOT_F16</span> <span class="o">=</span> <span class="mh">0x7F</span>
<span class="n">KEY_HOT_F17</span> <span class="o">=</span> <span class="mh">0x80</span>
<span class="n">KEY_HOT_F18</span> <span class="o">=</span> <span class="mh">0x81</span>
<span class="n">KEY_HOT_F19</span> <span class="o">=</span> <span class="mh">0x82</span>
<span class="n">KEY_HOT_F20</span> <span class="o">=</span> <span class="mh">0x83</span>
<span class="n">KEY_HOT_F21</span> <span class="o">=</span> <span class="mh">0x84</span>
<span class="n">KEY_HOT_F22</span> <span class="o">=</span> <span class="mh">0x85</span>
<span class="n">KEY_HOT_F23</span> <span class="o">=</span> <span class="mh">0x86</span>
<span class="n">KEY_HOT_F24</span> <span class="o">=</span> <span class="mh">0x87</span>
<span class="n">KEY_HOT_TILDE</span> <span class="o">=</span> <span class="mh">0x29</span> <span class="c1">#~</span>
<span class="n">KEY_HOT_COLON</span> <span class="o">=</span> <span class="mh">0x27</span> <span class="c1">#:</span>
<span class="n">KEY_HOT_PLUS</span> <span class="o">=</span> <span class="mh">0x0D</span> <span class="c1">#+</span>
<span class="n">KEY_HOT_MINUS</span> <span class="o">=</span> <span class="mh">0x0C</span> <span class="c1">#-</span>
<span class="n">KEY_HOT_LESS_THAN</span> <span class="o">=</span> <span class="mh">0x33</span> <span class="c1">#&lt; ,</span>
<span class="n">KEY_HOT_GREATER_THAN</span> <span class="o">=</span> <span class="mh">0x34</span> <span class="c1">#&gt; .</span>
<span class="n">KEY_HOT_SOLIDUS</span> <span class="o">=</span> <span class="mh">0x35</span> <span class="c1">#/ ?</span>
<span class="n">KEY_HOT_SQUARE_BRACKET_LEFT</span> <span class="o">=</span> <span class="mh">0x1A</span> <span class="c1">#[</span>
<span class="n">KEY_HOT_SQUARE_BRACKET_RIGHT</span> <span class="o">=</span> <span class="mh">0x1B</span> <span class="c1">#]</span>
<span class="n">KEY_HOT_APOSTROPHE</span> <span class="o">=</span> <span class="mh">0x28</span> <span class="c1">#&#39; &quot;</span>
<span class="n">KEY_HOT_VERTICAL_LINE</span> <span class="o">=</span> <span class="mh">0x2B</span> <span class="c1">#| \</span>
<span class="n">KEY_HOT_ESC</span> <span class="o">=</span> <span class="mh">0x1</span>
<span class="n">KEY_HOT_BACKSPACE</span> <span class="o">=</span> <span class="mh">0x0E</span>
<span class="n">KEY_HOT_TAB</span> <span class="o">=</span> <span class="mh">0x0F</span>
<span class="n">KEY_HOT_ENTER</span> <span class="o">=</span> <span class="mh">0x1C</span>
<span class="n">KEY_HOT_CONTEXT_MENU</span> <span class="o">=</span> <span class="mh">0x15D</span>
<span class="n">KEY_HOT_SHIFT_LEFT</span> <span class="o">=</span> <span class="mh">0x2A</span>
<span class="n">KEY_HOT_SHIFT_RIGHT</span> <span class="o">=</span> <span class="mh">0x36</span>
<span class="n">KEY_HOT_CTRL_LEFT</span> <span class="o">=</span> <span class="mh">0x1D</span>
<span class="n">KEY_HOT_CTRL_RIGHT</span> <span class="o">=</span> <span class="mh">0x11D</span>
<span class="n">KEY_HOT_ALT_LEFT</span> <span class="o">=</span> <span class="mh">0x38</span>
<span class="n">KEY_HOT_ALT_RIGHT</span> <span class="o">=</span> <span class="mh">0x138</span>
<span class="n">KEY_HOT_WIN_LEFT</span> <span class="o">=</span> <span class="mh">0x5B</span>
<span class="n">KEY_HOT_WIN_RIGHT</span> <span class="o">=</span> <span class="mh">0x5C</span>
<span class="n">KEY_HOT_CAPS_LOCK</span> <span class="o">=</span> <span class="mh">0x3A</span>
<span class="n">KEY_HOT_NUM_LOCK</span> <span class="o">=</span> <span class="mh">0x45</span>
<span class="n">KEY_HOT_SCROLL_LOCK</span> <span class="o">=</span> <span class="mh">0x46</span>
<span class="n">KEY_HOT_END</span> <span class="o">=</span> <span class="mh">0x4F</span>
<span class="n">KEY_HOT_HOME</span> <span class="o">=</span> <span class="mh">0x47</span>
<span class="n">KEY_HOT_SPACE</span> <span class="o">=</span> <span class="mh">0x39</span>
<span class="n">KEY_HOT_PAGE_UP</span> <span class="o">=</span> <span class="mh">0x49</span>
<span class="n">KEY_HOT_PAGE_DOWN</span> <span class="o">=</span> <span class="mh">0x51</span>
<span class="n">KEY_HOT_CLEAR</span> <span class="o">=</span> <span class="mh">0x4C</span>
<span class="n">KEY_HOT_LEFT</span> <span class="o">=</span> <span class="mh">0x4B</span>
<span class="n">KEY_HOT_UP</span> <span class="o">=</span> <span class="mh">0x48</span>
<span class="n">KEY_HOT_RIGHT</span> <span class="o">=</span> <span class="mh">0x4D</span>
<span class="n">KEY_HOT_DOWN</span> <span class="o">=</span> <span class="mh">0x50</span>
<span class="n">KEY_HOT_PRINT_SCREEN</span> <span class="o">=</span> <span class="mh">0x137</span>
<span class="n">KEY_HOT_INSERT</span> <span class="o">=</span> <span class="mh">0x52</span>
<span class="n">KEY_HOT_DELETE</span> <span class="o">=</span> <span class="mh">0x53</span>
<span class="n">KEY_HOT_0</span> <span class="o">=</span> <span class="mh">0xB</span>
<span class="n">KEY_HOT_1</span> <span class="o">=</span> <span class="mh">0x2</span>
<span class="n">KEY_HOT_2</span> <span class="o">=</span> <span class="mh">0x3</span>
<span class="n">KEY_HOT_3</span> <span class="o">=</span> <span class="mh">0x4</span>
<span class="n">KEY_HOT_4</span> <span class="o">=</span> <span class="mh">0x5</span>
<span class="n">KEY_HOT_5</span> <span class="o">=</span> <span class="mh">0x6</span>
<span class="n">KEY_HOT_6</span> <span class="o">=</span> <span class="mh">0x7</span>
<span class="n">KEY_HOT_7</span> <span class="o">=</span> <span class="mh">0x8</span>
<span class="n">KEY_HOT_8</span> <span class="o">=</span> <span class="mh">0x9</span>
<span class="n">KEY_HOT_9</span> <span class="o">=</span> <span class="mh">0xA</span>
</pre></div>
</div>
</div>
<div class="section" id="id5">
<h2>Дополнительная функциональность<a class="headerlink" href="#id5" title="Ссылка на этот заголовок"></a></h2>
<p>Дополнительно модуль содержит функции вспомогательной библиотеки. Ознакомиться с описанием можно <a class="reference external" href="https://github.com/boppreh/keyboard#api">Здесь</a></p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Пример использования функции send</span>
<span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Keyboard</span>
<span class="n">Keyboard</span><span class="o">.</span><span class="n">send</span><span class="p">(</span><span class="mi">57</span><span class="p">)</span>
</pre></div>
</div>
</div>
<div class="section" id="id7">
<h2>Быстрая навигация<a class="headerlink" href="#id7" title="Ссылка на этот заголовок"></a></h2>
<ul class="simple">
<li><p><a class="reference external" href="https://t.me/pyOpenRPA">Сообщество pyOpenRPA (telegram)</a></p></li>
<li><p><a class="reference external" href="https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24">Сообщество pyOpenRPA (tenchat)</a></p></li>
<li><p><a class="reference external" href="https://vk.com/pyopenrpa">Сообщество pyOpenRPA (вконтакте)</a></p></li>
<li><p><a class="reference external" href="https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf">Презентация pyOpenRPA</a></p></li>
<li><p><a class="reference external" href="https://pyopenrpa.ru">Портал pyOpenRPA</a></p></li>
<li><p><a class="reference external" href="https://gitlab.com/UnicodeLabs/OpenRPA">Репозиторий pyOpenRPA</a></p></li>
</ul>
<p> .. v1.2.12 replace:: v1.2.12</p>
<p></p> <p></p>
</div> </div>
</div> </div>
@ -665,8 +642,8 @@ Example: [</p>
</div> </div>
<footer> <footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="05_clipboard.html" class="btn btn-neutral float-right" title="5. Clipboard" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a> <a href="05_clipboard.html" class="btn btn-neutral float-right" title="5. Функции Clipboard" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="03_uiweb.html" class="btn btn-neutral float-left" title="3. UIWeb" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a> <a href="03_uiweb.html" class="btn btn-neutral float-left" title="3. Функции UIWeb" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a>
</div> </div>
<hr/> <hr/>

@ -7,7 +7,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>5. Clipboard &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title> <title>5. Функции Clipboard &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title>
@ -41,8 +41,8 @@
<link rel="index" title="Алфавитный указатель" href="../genindex.html" /> <link rel="index" title="Алфавитный указатель" href="../genindex.html" />
<link rel="search" title="Поиск" href="../search.html" /> <link rel="search" title="Поиск" href="../search.html" />
<link rel="next" title="6. Mouse" href="06_mouse.html" /> <link rel="next" title="6. Функции Mouse" href="06_mouse.html" />
<link rel="prev" title="4. Keyboard" href="04_keyboard.html" /> <link rel="prev" title="4. Функции Keyboard" href="04_keyboard.html" />
</head> </head>
<body class="wy-body-for-nav"> <body class="wy-body-for-nav">
@ -91,23 +91,22 @@
<ul> <ul>
<li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li> <li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li>
<li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li> <li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li>
<li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Права &amp; Контакты</a></li> <li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Лицензия &amp; Контакты</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p>
<ul class="current"> <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="01_Robot.html">1. Описание</a></li> <li class="toctree-l1"><a class="reference internal" href="01_Robot.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="02_Defs.html">2. Функции</a></li> <li class="toctree-l1"><a class="reference internal" href="02_uidesktop.html">2. Функции UIDesktop</a></li>
<li class="toctree-l1"><a class="reference internal" href="02_uidesktop.html">2. UIDesktop</a></li> <li class="toctree-l1"><a class="reference internal" href="03_uiweb.html">3. Функции UIWeb</a></li>
<li class="toctree-l1"><a class="reference internal" href="03_uiweb.html">3. UIWeb</a></li> <li class="toctree-l1"><a class="reference internal" href="04_keyboard.html">4. Функции Keyboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="04_keyboard.html">4. Keyboard</a></li> <li class="toctree-l1 current"><a class="current reference internal" href="#">5. Функции Clipboard</a><ul>
<li class="toctree-l1 current"><a class="current reference internal" href="#">5. Clipboard</a><ul> <li class="toctree-l2"><a class="reference internal" href="#module-pyOpenRPA.Robot.Clipboard">Описание функций</a></li>
<li class="toctree-l2"><a class="reference internal" href="#references">References</a></li> <li class="toctree-l2"><a class="reference internal" href="#id2">Быстрая навигация</a></li>
</ul> </ul>
</li> </li>
<li class="toctree-l1"><a class="reference internal" href="06_mouse.html">6. Mouse</a></li> <li class="toctree-l1"><a class="reference internal" href="06_mouse.html">6. Функции Mouse</a></li>
<li class="toctree-l1"><a class="reference internal" href="07_image.html">7. Image</a></li> <li class="toctree-l1"><a class="reference internal" href="07_image.html">7. Функции Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="08_HowToUse.html">8. Как использовать?</a></li> <li class="toctree-l1"><a class="reference internal" href="08_HowToUse.html">8. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="09_Dependencies.html">9. Зависимости</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p>
<ul> <ul>
@ -116,20 +115,19 @@
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Description</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Функции</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. gSettings Template</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. Настройки GSettings (шаблон)</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. How to use</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. UAC - User Access Control</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. Права доступа пользователей UAC</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/06_Defs%20Managers.html">6. Defs Managers</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Функции</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p> <p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Defs StopSafe</a></li> <li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Функции StopSafe</a></li>
</ul> </ul>
@ -178,7 +176,7 @@
<li><a href="../index.html" class="icon icon-home"></a> &raquo;</li> <li><a href="../index.html" class="icon icon-home"></a> &raquo;</li>
<li>5. Clipboard</li> <li>5. Функции Clipboard</li>
<li class="wy-breadcrumbs-aside"> <li class="wy-breadcrumbs-aside">
@ -198,463 +196,71 @@
<div itemprop="articleBody"> <div itemprop="articleBody">
<div class="section" id="clipboard"> <div class="section" id="clipboard">
<span id="module-robot-clipboard"></span><h1>5. Clipboard<a class="headerlink" href="#clipboard" title="Ссылка на этот заголовок"></a></h1> <span id="module-robot-clipboard"></span><h1>5. Функции Clipboard<a class="headerlink" href="#clipboard" title="Ссылка на этот заголовок"></a></h1>
<p>Here you can find the functions description for interaction with desktop GUI applications</p> <div class="section" id="module-pyOpenRPA.Robot.Clipboard">
<p>How to use both x32 and x64 python processes (it can be helpfully, if another app GUI is on another bitness than your app)</p> <span id="id1"></span><h2>Описание функций<a class="headerlink" href="#module-pyOpenRPA.Robot.Clipboard" title="Ссылка на этот заголовок"></a></h2>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">UIDesktop</span> <p><strong>Functions:</strong></p>
<span class="c1">#Section for robot init</span>
<span class="n">lPyOpenRPA_SettingsDict</span> <span class="o">=</span> <span class="p">{</span>
<span class="s2">&quot;Python32FullPath&quot;</span><span class="p">:</span> <span class="s2">&quot;..</span><span class="se">\\</span><span class="s2">Resources</span><span class="se">\\</span><span class="s2">WPy32-3720</span><span class="se">\\</span><span class="s2">python-3.7.2</span><span class="se">\\</span><span class="s2">python.exe&quot;</span><span class="p">,</span> <span class="c1">#Set from user: &quot;..\\Resources\\WPy32-3720\\python-3.7.2\\OpenRPARobotGUIx32.exe&quot;</span>
<span class="s2">&quot;Python64FullPath&quot;</span><span class="p">:</span> <span class="s2">&quot;..</span><span class="se">\\</span><span class="s2">Resources</span><span class="se">\\</span><span class="s2">WPy64-3720</span><span class="se">\\</span><span class="s2">python-3.7.2.amd64</span><span class="se">\\</span><span class="s2">python.exe&quot;</span><span class="p">,</span> <span class="c1">#Set from user</span>
<span class="s2">&quot;Python32ProcessName&quot;</span><span class="p">:</span> <span class="s2">&quot;pyOpenRPA_UIDesktopX32.exe&quot;</span><span class="p">,</span> <span class="c1">#Config set once</span>
<span class="s2">&quot;Python64ProcessName&quot;</span><span class="p">:</span> <span class="s2">&quot;pyOpenRPA_UIDesktopX64.exe&quot;</span> <span class="c1">#Config set once</span>
<span class="p">}</span>
<span class="c1"># Init the pyOpenRPA configuration</span>
<span class="n">UIDesktop</span><span class="o">.</span><span class="n">Utils</span><span class="o">.</span><span class="n">ProcessBitness</span><span class="o">.</span><span class="n">SettingsInit</span><span class="p">(</span><span class="n">lPyOpenRPA_SettingsDict</span><span class="p">)</span>
<span class="c1"># Now you can use pyOpenRPA with both bitness.</span>
</pre></div>
</div>
<span class="target" id="module-pyOpenRPA.Robot.UIDesktop"></span><p><strong>Functions:</strong></p>
<table class="longtable docutils align-default"> <table class="longtable docutils align-default">
<colgroup> <colgroup>
<col style="width: 10%" /> <col style="width: 10%" />
<col style="width: 90%" /> <col style="width: 90%" />
</colgroup> </colgroup>
<tbody> <tbody>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt" title="pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Get_OSBitnessInt</span></code></a>()</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.Clipboard.Get" title="pyOpenRPA.Robot.Clipboard.Get"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Get</span></code></a>()</p></td>
<td><p>Detect OS bitness.</p></td> <td><p>Получить текстовое содержимое буфера обмена.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication" title="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication"><code class="xref py py-obj docutils literal notranslate"><span class="pre">PWASpecification_Get_PWAApplication</span></code></a>(…)</p></td>
<td><p>#Backend selection - attribute «backend» («win32» || «uia») in 1-st list element</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO" title="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO"><code class="xref py py-obj docutils literal notranslate"><span class="pre">PWASpecification_Get_UIO</span></code></a>(…)</p></td>
<td><p>#Backend def selection - attribute «backend» («win32» || «uia») in 1-st list element #old name - GetControl</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorSecs_WaitAppear_Bool</span></code></a>(…)</p></td>
<td><p>Wait for UI object will appear in GUI for inWaitSecs seconds.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorSecs_WaitDisappear_Bool</span></code></a>(…)</p></td>
<td><p>Wait for UI object will disappear in GUI for inWaitSecs seconds.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorUIOActivity_Run_Dict</span></code></a>(…[, …])</p></td>
<td><p>Run the activity in UIO (UI Object)</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Exist_Bool</span></code></a>(inUIOSelector)</p></td>
<td><p>Check if object is exist by the UIO selector.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_FocusHighlight</span></code></a>(inUIOSelector)</p></td>
<td><p>Set focus and highlight (draw outline) the element (in app) by the UIO selector.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_GetChildList_UIOList</span></code></a>([…])</p></td>
<td><p>Get list of child UIOs by the parent UIOSelector</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_BitnessInt</span></code></a>(inSpecificationList)</p></td>
<td><p>Detect process bitness by the UI Object UIO Selector.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_BitnessStr</span></code></a>(inSpecificationList)</p></td>
<td><p>Detect process bitness by the UI Object UIO Selector.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIO</span></code></a>(inSpecificationList[, …])</p></td>
<td><p>Get the pywinauto object by the UIO selector.</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIOActivityList</span></code></a>(inUIOSelector)</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.Clipboard.Set" title="pyOpenRPA.Robot.Clipboard.Set"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Set</span></code></a>(inTextStr)</p></td>
<td><p>Get the list of the UI object activities</p></td> <td><p>Установить текстовое содержимое в буфер обмена.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIOInfo</span></code></a>(inUIOSelector)</p></td>
<td><p>Get the UIO dict of the attributes</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIOList</span></code></a>(inSpecificationList)</p></td>
<td><p>Get the UIO list by the selector</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Highlight</span></code></a>(inUIOSelector)</p></td>
<td><p>Highlight (draw outline) the element (in app) by the UIO selector.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_SafeOtherGet_Process</span></code></a>(inUIOSelector)</p></td>
<td><p>Safe get other process or None if destination app is the other/same bitness</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_SearchChildByMouse_UIO</span></code></a>(…)</p></td>
<td><p>UIOSelector (see description on the top of the document) #old name - AutomationSearchMouseElement</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_SearchChildByMouse_UIOTree</span></code></a>(…)</p></td>
<td><p>!!!!Safe call is included (you can set activity and UIDesktop will choose the bitness and return the result)!!!!!</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_TryRestore_Dict</span></code></a>(inSpecificationList)</p></td>
<td><p>Try to restore (maximize) window, if its minimized.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorsSecs_WaitAppear_List</span></code></a>(…[, …])</p></td>
<td><p>Wait for many UI object will appear in GUI for inWaitSecs seconds.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorsSecs_WaitDisappear_List</span></code></a>(…[, …])</p></td>
<td><p>Wait for many UI object will disappear in GUI for inWaitSecs seconds.</p></td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
<dl class="py function"> <dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt"> <dt id="pyOpenRPA.Robot.Clipboard.Get">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">Get_OSBitnessInt</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#Get_OSBitnessInt"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt" title="Ссылка на это определение"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Robot.Clipboard.</code><code class="sig-name descname">Get</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/Clipboard.html#Get"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.Clipboard.Get" title="Ссылка на это определение"></a></dt>
<dd><p>Detect OS bitness.</p> <dd><p>Получить текстовое содержимое буфера обмена.</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Clipboard: Взаимодействие с буфером</span>
<span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Clipboard</span>
<span class="n">lClipStr</span> <span class="o">=</span> <span class="n">Clipboard</span><span class="o">.</span><span class="n">Get</span><span class="p">()</span>
</pre></div>
</div>
<dl class="field-list simple"> <dl class="field-list simple">
<dt class="field-odd">Результат</dt> <dt class="field-odd">Результат</dt>
<dd class="field-odd"><p>int 32 or int 64</p> <dd class="field-odd"><p>Текстовое содержимое буфера обмена</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">PWASpecification_Get_PWAApplication</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inControlSpecificationArray</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#PWASpecification_Get_PWAApplication"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication" title="Ссылка на это определение"></a></dt>
<dd><p>#Backend selection - attribute «backend» («win32» || «uia») in 1-st list element</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inControlSpecificationArray</strong> List of dict, dict in pywinauto.find_windows notation</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>process application object</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">PWASpecification_Get_UIO</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inControlSpecificationArray</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#PWASpecification_Get_UIO"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO" title="Ссылка на это определение"></a></dt>
<dd><p>#Backend def selection - attribute «backend» («win32» || «uia») in 1-st list element
#old name - GetControl</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inControlSpecificationArray</strong> List of dict, dict in pywinauto.find_windows notation</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>list of UIO object</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorSecs_WaitAppear_Bool</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorSecs_WaitAppear_Bool"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for UI object will appear in GUI for inWaitSecs seconds.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> UIOSelector. Example: [{«title»:»notepad»},{«title»:»OK»}]</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element appear in GUI</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>True - UI object will appear. False - else case</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorSecs_WaitDisappear_Bool</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorSecs_WaitDisappear_Bool"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for UI object will disappear in GUI for inWaitSecs seconds.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> UIOSelector.
Example: [{«title»:»notepad»},{«title»:»OK»}]</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element disappear in GUI</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>True - UI object will disappear. False - else case</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorUIOActivity_Run_Dict</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em>, <em class="sig-param"><span class="n">inActionName</span></em>, <em class="sig-param"><span class="n">inArgumentList</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inkwArgumentObject</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorUIOActivity_Run_Dict"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict" title="Ссылка на это определение"></a></dt>
<dd><p>Run the activity in UIO (UI Object)</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p></li>
<li><p><strong>inActionName</strong> UIOActivity (name) activity name string from Pywinauto</p></li>
<li><p><strong>inArgumentList</strong> </p></li>
<li><p><strong>inkwArgumentObject</strong> </p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Exist_Bool</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Exist_Bool"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool" title="Ссылка на это определение"></a></dt>
<dd><p>Check if object is exist by the UIO selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> </p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>True - Object is exist. False - else case</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_FocusHighlight</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_FocusHighlight"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight" title="Ссылка на это определение"></a></dt>
<dd><p>Set focus and highlight (draw outline) the element (in app) by the UIO selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_GetChildList_UIOList</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inBackend</span><span class="o">=</span><span class="default_value">'win32'</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_GetChildList_UIOList"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList" title="Ссылка на это определение"></a></dt>
<dd><p>Get list of child UIOs by the parent UIOSelector</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p></li>
<li><p><strong>inBackend</strong> «win32» or «uia»</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_BitnessInt</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_BitnessInt"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt" title="Ссылка на это определение"></a></dt>
<dd><p>Detect process bitness by the UI Object UIO Selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inSpecificationList</strong> UIOSelector. Example: [{«title»:»notepad»},{«title»:»OK»}]</p>
</dd> </dd>
<dt class="field-even">Результат</dt> <dt class="field-even">Тип результата</dt>
<dd class="field-even"><p>int 32 or int 64</p> <dd class="field-even"><p>str</p>
</dd> </dd>
</dl> </dl>
</dd></dl> </dd></dl>
<dl class="py function"> <dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr"> <dt id="pyOpenRPA.Robot.Clipboard.Set">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_BitnessStr</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_BitnessStr"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr" title="Ссылка на это определение"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Robot.Clipboard.</code><code class="sig-name descname">Set</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inTextStr</span><span class="p">:</span> <span class="n">str</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/Clipboard.html#Set"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.Clipboard.Set" title="Ссылка на это определение"></a></dt>
<dd><p>Detect process bitness by the UI Object UIO Selector.</p> <dd><p>Установить текстовое содержимое в буфер обмена.</p>
<dl class="field-list simple"> <div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Clipboard: Взаимодействие с буфером</span>
<dt class="field-odd">Параметры</dt> <span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Clipboard</span>
<dd class="field-odd"><p><strong>inSpecificationList</strong> UIOSelector. Example: [{«title»:»notepad»},{«title»:»OK»}]</p> <span class="n">lClipStr</span> <span class="o">=</span> <span class="n">Clipboard</span><span class="o">.</span><span class="n">Set</span><span class="p">(</span><span class="n">inTextStr</span><span class="o">=</span><span class="s2">&quot;HELLO WORLD&quot;</span><span class="p">)</span>
</dd> </pre></div>
<dt class="field-even">Результат</dt> </div>
<dd class="field-even"><p>str «32» or str «64»</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIO</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inElement</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inFlagRaiseException</span><span class="o">=</span><span class="default_value">True</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIO"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO" title="Ссылка на это определение"></a></dt>
<dd><p>Get the pywinauto object by the UIO selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> </p></li>
<li><p><strong>inElement</strong> </p></li>
<li><p><strong>inFlagRaiseException</strong> </p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIOActivityList</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIOActivityList"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList" title="Ссылка на это определение"></a></dt>
<dd><p>Get the list of the UI object activities</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIOInfo</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIOInfo"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo" title="Ссылка на это определение"></a></dt>
<dd><p>Get the UIO dict of the attributes</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIOList</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inElement</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inFlagRaiseException</span><span class="o">=</span><span class="default_value">True</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIOList"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList" title="Ссылка на это определение"></a></dt>
<dd><p>Get the UIO list by the selector</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> UIO Selector</p></li>
<li><p><strong>inElement</strong> Входной элемент - показатель, что не требуется выполнять коннект к процессу</p></li>
<li><p><strong>inFlagRaiseException</strong> Флаг True - выкинуть ошибку в случае обнаружении пустого списка</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Highlight</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Highlight"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight" title="Ссылка на это определение"></a></dt>
<dd><p>Highlight (draw outline) the element (in app) by the UIO selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_SafeOtherGet_Process</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_SafeOtherGet_Process"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process" title="Ссылка на это определение"></a></dt>
<dd><p>Safe get other process or None if destination app is the other/same bitness</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIO Selector of the UI object</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>None or process (of the other bitness)</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_SearchChildByMouse_UIO</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inElementSpecification</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_SearchChildByMouse_UIO"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO" title="Ссылка на это определение"></a></dt>
<dd><p>UIOSelector (see description on the top of the document)
#old name - AutomationSearchMouseElement</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inElementSpecification</strong> UIOSelector of the UI Object</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>pywinauto element wrapper instance or None</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_SearchChildByMouse_UIOTree</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_SearchChildByMouse_UIOTree"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree" title="Ссылка на это определение"></a></dt>
<dd><p>!!!!Safe call is included (you can set activity and UIDesktop will choose the bitness and return the result)!!!!!</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector of the UI Object</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p><p>?</p>
</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_TryRestore_Dict</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_TryRestore_Dict"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict" title="Ссылка на это определение"></a></dt>
<dd><p>Try to restore (maximize) window, if its minimized. (!IMPORTANT! When use UIA framework minimized windows doesnt appear by the UIOSelector. You need to try restore windows and after that try to get UIO)</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inSpecificationList</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorsSecs_WaitAppear_List</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationListList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em>, <em class="sig-param"><span class="n">inFlagWaitAllInMoment</span><span class="o">=</span><span class="default_value">False</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorsSecs_WaitAppear_List"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for many UI object will appear in GUI for inWaitSecs seconds.</p>
<dl class="field-list simple"> <dl class="field-list simple">
<dt class="field-odd">Параметры</dt> <dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple"> <dd class="field-odd"><p><strong>inTextStr</strong> (<em>str</em>) Текстовое содержимое для установки в буфера обмена</p>
<li><p><strong>inSpecificationListList</strong> <p>UIOSelector list.
Example: [</p>
<blockquote>
<div><p>[{«title»:»notepad»},{«title»:»OK»}],
[{«title»:»notepad»},{«title»:»Cancel»}]</p>
</div></blockquote>
<p>]</p>
</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element appear in GUI</p></li>
<li><p><strong>inFlagWaitAllInMoment</strong> True - Wait all UI objects from the UIOSelector list to be appeared</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>List of index, which UI object UIO will be appeared. Example: [1] # Appear only UI object with UIO selector: [{«title»:»notepad»},{«title»:»Cancel»}]</p>
</dd> </dd>
</dl> </dl>
</dd></dl> </dd></dl>
<dl class="py function"> </div>
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List"> <div class="section" id="id2">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorsSecs_WaitDisappear_List</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationListList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em>, <em class="sig-param"><span class="n">inFlagWaitAllInMoment</span><span class="o">=</span><span class="default_value">False</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorsSecs_WaitDisappear_List"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List" title="Ссылка на это определение"></a></dt> <h2>Быстрая навигация<a class="headerlink" href="#id2" title="Ссылка на этот заголовок"></a></h2>
<dd><p>Wait for many UI object will disappear in GUI for inWaitSecs seconds.</p> <ul class="simple">
<dl class="field-list simple"> <li><p><a class="reference external" href="https://t.me/pyOpenRPA">Сообщество pyOpenRPA (telegram)</a></p></li>
<dt class="field-odd">Параметры</dt> <li><p><a class="reference external" href="https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24">Сообщество pyOpenRPA (tenchat)</a></p></li>
<dd class="field-odd"><ul class="simple"> <li><p><a class="reference external" href="https://vk.com/pyopenrpa">Сообщество pyOpenRPA (вконтакте)</a></p></li>
<li><p><strong>inSpecificationListList</strong> <p>UIOSelector list. <li><p><a class="reference external" href="https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf">Презентация pyOpenRPA</a></p></li>
Example: [</p> <li><p><a class="reference external" href="https://pyopenrpa.ru">Портал pyOpenRPA</a></p></li>
<blockquote> <li><p><a class="reference external" href="https://gitlab.com/UnicodeLabs/OpenRPA">Репозиторий pyOpenRPA</a></p></li>
<div><p>[{«title»:»notepad»},{«title»:»OK»}],
[{«title»:»notepad»},{«title»:»Cancel»}]</p>
</div></blockquote>
<p>]</p>
</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element disappear in GUI</p></li>
<li><p><strong>inFlagWaitAllInMoment</strong> True - Wait all UI objects from the UIOSelector list to be disappeared.</p></li>
</ul> </ul>
</dd> <p> .. v1.2.12 replace:: v1.2.12</p>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>List of index, which UI object UIO will be disappeared. Example: [1] # Disappear only UI object with UIO selector: [{«title»:»notepad»},{«title»:»Cancel»}]</p>
</dd>
<dt class="field-odd">Результат</dt>
<dd class="field-odd"><p></p>
</dd>
</dl>
</dd></dl>
<div class="section" id="references">
<h2>References<a class="headerlink" href="#references" title="Ссылка на этот заголовок"></a></h2>
<p><a class="reference external" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> <a class="footnote-reference brackets" href="#id3" id="id4">1</a></p>
<dl class="footnote brackets">
<dt class="label" id="id3"><span class="brackets"><a class="fn-backref" href="#id4">1</a></span></dt>
<dd><p><a class="reference external" href="http://docutils.sourceforge.net/rst.html">http://docutils.sourceforge.net/rst.html</a></p>
</dd>
</dl>
<p> .. v1.2.12 replace:: v1.2.12
.. <a href="#id1"><span class="problematic" id="id2">|author|</span></a> replace:: Ivan Maslov &lt;<a class="reference external" href="mailto:ivan&#46;maslov&#37;&#52;&#48;unicodelabs&#46;ru">ivan<span>&#46;</span>maslov<span>&#64;</span>unicodelabs<span>&#46;</span>ru</a>&gt;</p>
<p></p> <p></p>
</div> </div>
</div> </div>
@ -665,8 +271,8 @@ Example: [</p>
</div> </div>
<footer> <footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="06_mouse.html" class="btn btn-neutral float-right" title="6. Mouse" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a> <a href="06_mouse.html" class="btn btn-neutral float-right" title="6. Функции Mouse" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="04_keyboard.html" class="btn btn-neutral float-left" title="4. Keyboard" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a> <a href="04_keyboard.html" class="btn btn-neutral float-left" title="4. Функции Keyboard" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a>
</div> </div>
<hr/> <hr/>

@ -7,7 +7,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>6. Mouse &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title> <title>6. Функции Mouse &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title>
@ -41,8 +41,8 @@
<link rel="index" title="Алфавитный указатель" href="../genindex.html" /> <link rel="index" title="Алфавитный указатель" href="../genindex.html" />
<link rel="search" title="Поиск" href="../search.html" /> <link rel="search" title="Поиск" href="../search.html" />
<link rel="next" title="7. Image" href="07_image.html" /> <link rel="next" title="7. Функции Image" href="07_image.html" />
<link rel="prev" title="5. Clipboard" href="05_clipboard.html" /> <link rel="prev" title="5. Функции Clipboard" href="05_clipboard.html" />
</head> </head>
<body class="wy-body-for-nav"> <body class="wy-body-for-nav">
@ -91,23 +91,23 @@
<ul> <ul>
<li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li> <li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li>
<li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li> <li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li>
<li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Права &amp; Контакты</a></li> <li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Лицензия &amp; Контакты</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p>
<ul class="current"> <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="01_Robot.html">1. Описание</a></li> <li class="toctree-l1"><a class="reference internal" href="01_Robot.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="02_Defs.html">2. Функции</a></li> <li class="toctree-l1"><a class="reference internal" href="02_uidesktop.html">2. Функции UIDesktop</a></li>
<li class="toctree-l1"><a class="reference internal" href="02_uidesktop.html">2. UIDesktop</a></li> <li class="toctree-l1"><a class="reference internal" href="03_uiweb.html">3. Функции UIWeb</a></li>
<li class="toctree-l1"><a class="reference internal" href="03_uiweb.html">3. UIWeb</a></li> <li class="toctree-l1"><a class="reference internal" href="04_keyboard.html">4. Функции Keyboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="04_keyboard.html">4. Keyboard</a></li> <li class="toctree-l1"><a class="reference internal" href="05_clipboard.html">5. Функции Clipboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="05_clipboard.html">5. Clipboard</a></li> <li class="toctree-l1 current"><a class="current reference internal" href="#">6. Функции Mouse</a><ul>
<li class="toctree-l1 current"><a class="current reference internal" href="#">6. Mouse</a><ul> <li class="toctree-l2"><a class="reference internal" href="#id1">Общее</a></li>
<li class="toctree-l2"><a class="reference internal" href="#references">References</a></li> <li class="toctree-l2"><a class="reference internal" href="#module-pyOpenRPA.Robot.Mouse">Описание функций</a></li>
<li class="toctree-l2"><a class="reference internal" href="#id3">Быстрая навигация</a></li>
</ul> </ul>
</li> </li>
<li class="toctree-l1"><a class="reference internal" href="07_image.html">7. Image</a></li> <li class="toctree-l1"><a class="reference internal" href="07_image.html">7. Функции Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="08_HowToUse.html">8. Как использовать?</a></li> <li class="toctree-l1"><a class="reference internal" href="08_HowToUse.html">8. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="09_Dependencies.html">9. Зависимости</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p>
<ul> <ul>
@ -116,20 +116,19 @@
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Description</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Функции</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. gSettings Template</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. Настройки GSettings (шаблон)</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. How to use</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. UAC - User Access Control</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. Права доступа пользователей UAC</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/06_Defs%20Managers.html">6. Defs Managers</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Функции</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p> <p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Defs StopSafe</a></li> <li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Функции StopSafe</a></li>
</ul> </ul>
@ -178,7 +177,7 @@
<li><a href="../index.html" class="icon icon-home"></a> &raquo;</li> <li><a href="../index.html" class="icon icon-home"></a> &raquo;</li>
<li>6. Mouse</li> <li>6. Функции Mouse</li>
<li class="wy-breadcrumbs-aside"> <li class="wy-breadcrumbs-aside">
@ -198,463 +197,213 @@
<div itemprop="articleBody"> <div itemprop="articleBody">
<div class="section" id="mouse"> <div class="section" id="mouse">
<span id="module-robot-mouse"></span><h1>6. Mouse<a class="headerlink" href="#mouse" title="Ссылка на этот заголовок"></a></h1> <span id="module-robot-mouse"></span><h1>6. Функции Mouse<a class="headerlink" href="#mouse" title="Ссылка на этот заголовок"></a></h1>
<p>Here you can find the functions description for interaction with desktop GUI applications</p> <div class="section" id="id1">
<p>How to use both x32 and x64 python processes (it can be helpfully, if another app GUI is on another bitness than your app)</p> <h2>Общее<a class="headerlink" href="#id1" title="Ссылка на этот заголовок"></a></h2>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">UIDesktop</span>
<span class="c1">#Section for robot init</span>
<span class="n">lPyOpenRPA_SettingsDict</span> <span class="o">=</span> <span class="p">{</span>
<span class="s2">&quot;Python32FullPath&quot;</span><span class="p">:</span> <span class="s2">&quot;..</span><span class="se">\\</span><span class="s2">Resources</span><span class="se">\\</span><span class="s2">WPy32-3720</span><span class="se">\\</span><span class="s2">python-3.7.2</span><span class="se">\\</span><span class="s2">python.exe&quot;</span><span class="p">,</span> <span class="c1">#Set from user: &quot;..\\Resources\\WPy32-3720\\python-3.7.2\\OpenRPARobotGUIx32.exe&quot;</span>
<span class="s2">&quot;Python64FullPath&quot;</span><span class="p">:</span> <span class="s2">&quot;..</span><span class="se">\\</span><span class="s2">Resources</span><span class="se">\\</span><span class="s2">WPy64-3720</span><span class="se">\\</span><span class="s2">python-3.7.2.amd64</span><span class="se">\\</span><span class="s2">python.exe&quot;</span><span class="p">,</span> <span class="c1">#Set from user</span>
<span class="s2">&quot;Python32ProcessName&quot;</span><span class="p">:</span> <span class="s2">&quot;pyOpenRPA_UIDesktopX32.exe&quot;</span><span class="p">,</span> <span class="c1">#Config set once</span>
<span class="s2">&quot;Python64ProcessName&quot;</span><span class="p">:</span> <span class="s2">&quot;pyOpenRPA_UIDesktopX64.exe&quot;</span> <span class="c1">#Config set once</span>
<span class="p">}</span>
<span class="c1"># Init the pyOpenRPA configuration</span>
<span class="n">UIDesktop</span><span class="o">.</span><span class="n">Utils</span><span class="o">.</span><span class="n">ProcessBitness</span><span class="o">.</span><span class="n">SettingsInit</span><span class="p">(</span><span class="n">lPyOpenRPA_SettingsDict</span><span class="p">)</span>
<span class="c1"># Now you can use pyOpenRPA with both bitness.</span>
</pre></div>
</div> </div>
<span class="target" id="module-pyOpenRPA.Robot.UIDesktop"></span><p><strong>Functions:</strong></p> <div class="section" id="module-pyOpenRPA.Robot.Mouse">
<span id="id2"></span><h2>Описание функций<a class="headerlink" href="#module-pyOpenRPA.Robot.Mouse" title="Ссылка на этот заголовок"></a></h2>
<p><strong>Functions:</strong></p>
<table class="longtable docutils align-default"> <table class="longtable docutils align-default">
<colgroup> <colgroup>
<col style="width: 10%" /> <col style="width: 10%" />
<col style="width: 90%" /> <col style="width: 90%" />
</colgroup> </colgroup>
<tbody> <tbody>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt" title="pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Get_OSBitnessInt</span></code></a>()</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.Mouse.Click" title="pyOpenRPA.Robot.Mouse.Click"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Click</span></code></a>([inXInt, inYInt, inClickCountInt, …])</p></td>
<td><p>Detect OS bitness.</p></td> <td><p>Нажатие (вниз) кнопки мыши и затем немедленно выпуск (вверх) её.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication" title="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication"><code class="xref py py-obj docutils literal notranslate"><span class="pre">PWASpecification_Get_PWAApplication</span></code></a>(…)</p></td>
<td><p>#Backend selection - attribute «backend» («win32» || «uia») in 1-st list element</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO" title="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO"><code class="xref py py-obj docutils literal notranslate"><span class="pre">PWASpecification_Get_UIO</span></code></a>(…)</p></td>
<td><p>#Backend def selection - attribute «backend» («win32» || «uia») in 1-st list element #old name - GetControl</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorSecs_WaitAppear_Bool</span></code></a>(…)</p></td>
<td><p>Wait for UI object will appear in GUI for inWaitSecs seconds.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorSecs_WaitDisappear_Bool</span></code></a>(…)</p></td>
<td><p>Wait for UI object will disappear in GUI for inWaitSecs seconds.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorUIOActivity_Run_Dict</span></code></a>(…[, …])</p></td>
<td><p>Run the activity in UIO (UI Object)</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Exist_Bool</span></code></a>(inUIOSelector)</p></td>
<td><p>Check if object is exist by the UIO selector.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_FocusHighlight</span></code></a>(inUIOSelector)</p></td>
<td><p>Set focus and highlight (draw outline) the element (in app) by the UIO selector.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_GetChildList_UIOList</span></code></a>([…])</p></td>
<td><p>Get list of child UIOs by the parent UIOSelector</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_BitnessInt</span></code></a>(inSpecificationList)</p></td>
<td><p>Detect process bitness by the UI Object UIO Selector.</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_BitnessStr</span></code></a>(inSpecificationList)</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.Mouse.ClickDouble" title="pyOpenRPA.Robot.Mouse.ClickDouble"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ClickDouble</span></code></a>([inXInt, inYInt, …])</p></td>
<td><p>Detect process bitness by the UI Object UIO Selector.</p></td> <td><p>Двойное нажатие левой клавиши мыши.</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIO</span></code></a>(inSpecificationList[, …])</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.Mouse.Down" title="pyOpenRPA.Robot.Mouse.Down"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Down</span></code></a>([inXInt, inYInt, inButtonStr, …])</p></td>
<td><p>Get the pywinauto object by the UIO selector.</p></td> <td><p>Переместить указатель по координатам inXInt, inYInt, после чего нажать (вниз) клавишу мыши и не отпускать до выполнения соответсвующей команды (см.</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIOActivityList</span></code></a>(inUIOSelector)</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.Mouse.MoveTo" title="pyOpenRPA.Robot.Mouse.MoveTo"><code class="xref py py-obj docutils literal notranslate"><span class="pre">MoveTo</span></code></a>([inXInt, inYInt, …])</p></td>
<td><p>Get the list of the UI object activities</p></td> <td><p>Переместить указатель мыши на позицию inXInt, inYInt за время inMoveDurationSecFloat.</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIOInfo</span></code></a>(inUIOSelector)</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.Mouse.ScrollHorizontal" title="pyOpenRPA.Robot.Mouse.ScrollHorizontal"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ScrollHorizontal</span></code></a>(inScrollClickCountInt[, …])</p></td>
<td><p>Get the UIO dict of the attributes</p></td> <td><p>!ТОЛЬКО ДЛЯ LINUX! Переместить указатель мыши на позицию inXInt, inYInt и выполнить горизонтальную прокрутку (скроллинг) виртуальным колесом мыши на количество щелчков inScrollClickCountInt.</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIOList</span></code></a>(inSpecificationList)</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.Mouse.ScrollVertical" title="pyOpenRPA.Robot.Mouse.ScrollVertical"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ScrollVertical</span></code></a>(inScrollClickCountInt[, …])</p></td>
<td><p>Get the UIO list by the selector</p></td> <td><p>Переместить указатель мыши на позицию inXInt, inYInt и выполнить вертикальную прокрутку (скроллинг) колесом мыши на количество щелчков inScrollClickCountInt.</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Highlight</span></code></a>(inUIOSelector)</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.Mouse.Up" title="pyOpenRPA.Robot.Mouse.Up"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Up</span></code></a>([inXInt, inYInt, inButtonStr, …])</p></td>
<td><p>Highlight (draw outline) the element (in app) by the UIO selector.</p></td> <td><p>Отпустить (вверх) клавишу мыши.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_SafeOtherGet_Process</span></code></a>(inUIOSelector)</p></td>
<td><p>Safe get other process or None if destination app is the other/same bitness</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_SearchChildByMouse_UIO</span></code></a>(…)</p></td>
<td><p>UIOSelector (see description on the top of the document) #old name - AutomationSearchMouseElement</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_SearchChildByMouse_UIOTree</span></code></a>(…)</p></td>
<td><p>!!!!Safe call is included (you can set activity and UIDesktop will choose the bitness and return the result)!!!!!</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_TryRestore_Dict</span></code></a>(inSpecificationList)</p></td>
<td><p>Try to restore (maximize) window, if its minimized.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorsSecs_WaitAppear_List</span></code></a>(…[, …])</p></td>
<td><p>Wait for many UI object will appear in GUI for inWaitSecs seconds.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="07_image.html#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorsSecs_WaitDisappear_List</span></code></a>(…[, …])</p></td>
<td><p>Wait for many UI object will disappear in GUI for inWaitSecs seconds.</p></td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
<dl class="py function"> <dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt"> <dt id="pyOpenRPA.Robot.Mouse.Click">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">Get_OSBitnessInt</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#Get_OSBitnessInt"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt" title="Ссылка на это определение"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Robot.Mouse.</code><code class="sig-name descname">Click</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inXInt</span><span class="p">:</span> <span class="n">Optional<span class="p">[</span>int<span class="p">]</span></span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inYInt</span><span class="p">:</span> <span class="n">Optional<span class="p">[</span>int<span class="p">]</span></span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inClickCountInt</span><span class="p">:</span> <span class="n">int</span> <span class="o">=</span> <span class="default_value">1</span></em>, <em class="sig-param"><span class="n">inIntervalSecFloat</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">0.0</span></em>, <em class="sig-param"><span class="n">inButtonStr</span><span class="p">:</span> <span class="n">str</span> <span class="o">=</span> <span class="default_value">'left'</span></em>, <em class="sig-param"><span class="n">inMoveDurationSecFloat</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">0.0</span></em>, <em class="sig-param"><span class="n">inWaitAfterSecFloat</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">0.4</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/Mouse.html#Click"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.Mouse.Click" title="Ссылка на это определение"></a></dt>
<dd><p>Detect OS bitness.</p> <dd><p>Нажатие (вниз) кнопки мыши и затем немедленно выпуск (вверх) её. Допускается следующая параметризация. Если не указаны inXInt и inYInt - клик производится по месту нахождения указателя мыши.</p>
<dl class="field-list simple"> <p>!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).</p>
<dt class="field-odd">Результат</dt> <div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Mouse: Взаимодействие с мышью</span>
<dd class="field-odd"><p>int 32 or int 64</p> <span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Mouse</span>
</dd> <span class="n">Mouse</span><span class="o">.</span><span class="n">Click</span><span class="p">(</span><span class="mi">100</span><span class="p">,</span><span class="mi">150</span><span class="p">)</span> <span class="c1">#Выполнить нажатие левой клавиши мыши на экране по координатам: X(гор) 100px, Y(вер) 150px.</span>
</dl> </pre></div>
</dd></dl> </div>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">PWASpecification_Get_PWAApplication</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inControlSpecificationArray</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#PWASpecification_Get_PWAApplication"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication" title="Ссылка на это определение"></a></dt>
<dd><p>#Backend selection - attribute «backend» («win32» || «uia») in 1-st list element</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inControlSpecificationArray</strong> List of dict, dict in pywinauto.find_windows notation</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>process application object</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">PWASpecification_Get_UIO</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inControlSpecificationArray</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#PWASpecification_Get_UIO"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO" title="Ссылка на это определение"></a></dt>
<dd><p>#Backend def selection - attribute «backend» («win32» || «uia») in 1-st list element
#old name - GetControl</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inControlSpecificationArray</strong> List of dict, dict in pywinauto.find_windows notation</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>list of UIO object</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorSecs_WaitAppear_Bool</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorSecs_WaitAppear_Bool"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for UI object will appear in GUI for inWaitSecs seconds.</p>
<dl class="field-list simple"> <dl class="field-list simple">
<dt class="field-odd">Параметры</dt> <dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple"> <dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> UIOSelector. Example: [{«title»:»notepad»},{«title»:»OK»}]</p></li> <li><p><strong>inXInt</strong> (<em>int</em><em>, </em><em>опциональный</em>) Целевая позиция указателя мыши по оси X (горизонтальная ось).</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element appear in GUI</p></li> <li><p><strong>inYInt</strong> (<em>int</em><em>, </em><em>опциональный</em>) Целевая позиция указателя мыши по оси Y (вертикальная ось).</p></li>
<li><p><strong>inClickCountInt</strong> (<em>int</em><em>, </em><em>опциональный</em>) Количество нажатий (вниз и вверх) кнопкой мыши, По умолчанию 1</p></li>
<li><p><strong>inIntervalSecFloat</strong> (<em>float</em><em>, </em><em>опциональный</em>) Интервал ожидания в секундах между нажатиями, По умолчанию 0.0</p></li>
<li><p><strong>inButtonStr</strong> (<em>str</em><em>, </em><em>опциональный</em>) Номер кнопки, которую требуется нажать. Возможные варианты: „left“, „middle“, „right“ или 1, 2, 3. В остальных случаях инициирует исключение ValueError. По умолчанию „left“</p></li>
<li><p><strong>inMoveDurationSecFloat</strong> (<em>float</em><em>, </em><em>опциональный</em>) Время перемещения указателя мыши, По умолчанию 0.0 (моментальное перемещение)</p></li>
<li><p><strong>inWaitAfterSecFloat</strong> (<em>float</em><em>, </em><em>опциональный</em>) Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)</p></li>
</ul> </ul>
</dd> </dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>True - UI object will appear. False - else case</p>
</dd>
</dl> </dl>
</dd></dl> </dd></dl>
<dl class="py function"> <dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool"> <dt id="pyOpenRPA.Robot.Mouse.ClickDouble">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorSecs_WaitDisappear_Bool</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorSecs_WaitDisappear_Bool"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool" title="Ссылка на это определение"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Robot.Mouse.</code><code class="sig-name descname">ClickDouble</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inXInt</span><span class="p">:</span> <span class="n">Optional<span class="p">[</span>int<span class="p">]</span></span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inYInt</span><span class="p">:</span> <span class="n">Optional<span class="p">[</span>int<span class="p">]</span></span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inWaitAfterSecFloat</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">0.4</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/Mouse.html#ClickDouble"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.Mouse.ClickDouble" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for UI object will disappear in GUI for inWaitSecs seconds.</p> <dd><p>Двойное нажатие левой клавиши мыши. Данное действие аналогично вызову функции (см. ниже).</p>
<p>!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Mouse: Взаимодействие с мышью</span>
<span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Mouse</span>
<span class="n">Mouse</span><span class="o">.</span><span class="n">ClickDouble</span><span class="p">(</span><span class="mi">100</span><span class="p">,</span><span class="mi">150</span><span class="p">)</span> <span class="c1">#Выполнить двойное нажатие левой клавиши мыши на экране по координатам: X(гор) 100px, Y(вер) 150px.</span>
</pre></div>
</div>
<dl class="field-list simple"> <dl class="field-list simple">
<dt class="field-odd">Параметры</dt> <dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple"> <dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> UIOSelector. <li><p><strong>inXInt</strong> (<em>int</em><em>, </em><em>опциональный</em>) Целевая позиция указателя мыши по оси X (горизонтальная ось).</p></li>
Example: [{«title»:»notepad»},{«title»:»OK»}]</p></li> <li><p><strong>inYInt</strong> (<em>int</em><em>, </em><em>опциональный</em>) Целевая позиция указателя мыши по оси Y (вертикальная ось).</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element disappear in GUI</p></li> <li><p><strong>inButtonStr</strong> (<em>str</em><em>, </em><em>опциональный</em>) Номер кнопки, которую требуется нажать. Возможные варианты: „left“, „middle“, „right“ или 1, 2, 3. В остальных случаях инициирует исключение ValueError. По умолчанию „left“</p></li>
<li><p><strong>inWaitAfterSecFloat</strong> (<em>float</em><em>, </em><em>опциональный</em>) Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)</p></li>
</ul> </ul>
</dd> </dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>True - UI object will disappear. False - else case</p>
</dd>
</dl> </dl>
</dd></dl> </dd></dl>
<dl class="py function"> <dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict"> <dt id="pyOpenRPA.Robot.Mouse.Down">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorUIOActivity_Run_Dict</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em>, <em class="sig-param"><span class="n">inActionName</span></em>, <em class="sig-param"><span class="n">inArgumentList</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inkwArgumentObject</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorUIOActivity_Run_Dict"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict" title="Ссылка на это определение"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Robot.Mouse.</code><code class="sig-name descname">Down</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inXInt</span><span class="p">:</span> <span class="n">Optional<span class="p">[</span>int<span class="p">]</span></span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inYInt</span><span class="p">:</span> <span class="n">Optional<span class="p">[</span>int<span class="p">]</span></span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inButtonStr</span><span class="p">:</span> <span class="n">str</span> <span class="o">=</span> <span class="default_value">'left'</span></em>, <em class="sig-param"><span class="n">inWaitAfterSecFloat</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">0.4</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/Mouse.html#Down"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.Mouse.Down" title="Ссылка на это определение"></a></dt>
<dd><p>Run the activity in UIO (UI Object)</p> <dd><p>Переместить указатель по координатам inXInt, inYInt, после чего нажать (вниз) клавишу мыши и не отпускать до выполнения соответсвующей команды (см. Up). Если координаты inXInt, inYInt не переданы - нажатие происходит на тех координатах X/Y, на которых указатель мыши находится.</p>
<p>!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Mouse: Взаимодействие с мышью</span>
<span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Mouse</span>
<span class="n">Mouse</span><span class="o">.</span><span class="n">Down</span><span class="p">()</span> <span class="c1">#Опустить левую клавишу мыши</span>
</pre></div>
</div>
<dl class="field-list simple"> <dl class="field-list simple">
<dt class="field-odd">Параметры</dt> <dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple"> <dd class="field-odd"><ul class="simple">
<li><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p></li> <li><p><strong>inXInt</strong> (<em>int</em><em>, </em><em>опциональный</em>) Целевая позиция указателя мыши по оси X (горизонтальная ось).</p></li>
<li><p><strong>inActionName</strong> UIOActivity (name) activity name string from Pywinauto</p></li> <li><p><strong>inYInt</strong> (<em>int</em><em>, </em><em>опциональный</em>) Целевая позиция указателя мыши по оси Y (вертикальная ось).</p></li>
<li><p><strong>inArgumentList</strong> </p></li> <li><p><strong>inButtonStr</strong> (<em>str</em><em>, </em><em>опциональный</em>) Номер кнопки, которую требуется нажать. Возможные варианты: „left“, „middle“, „right“ или 1, 2, 3. В остальных случаях инициирует исключение ValueError. По умолчанию „left“</p></li>
<li><p><strong>inkwArgumentObject</strong> </p></li> <li><p><strong>inWaitAfterSecFloat</strong> (<em>float</em><em>, </em><em>опциональный</em>) Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)</p></li>
</ul> </ul>
</dd> </dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Exist_Bool</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Exist_Bool"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool" title="Ссылка на это определение"></a></dt>
<dd><p>Check if object is exist by the UIO selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> </p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>True - Object is exist. False - else case</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_FocusHighlight</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_FocusHighlight"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight" title="Ссылка на это определение"></a></dt>
<dd><p>Set focus and highlight (draw outline) the element (in app) by the UIO selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl> </dl>
</dd></dl> </dd></dl>
<dl class="py function"> <dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList"> <dt id="pyOpenRPA.Robot.Mouse.MoveTo">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_GetChildList_UIOList</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inBackend</span><span class="o">=</span><span class="default_value">'win32'</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_GetChildList_UIOList"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList" title="Ссылка на это определение"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Robot.Mouse.</code><code class="sig-name descname">MoveTo</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inXInt</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inYInt</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inMoveDurationSecFloat</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">0.0</span></em>, <em class="sig-param"><span class="n">inWaitAfterSecFloat</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">0.4</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/Mouse.html#MoveTo"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.Mouse.MoveTo" title="Ссылка на это определение"></a></dt>
<dd><p>Get list of child UIOs by the parent UIOSelector</p> <dd><p>Переместить указатель мыши на позицию inXInt, inYInt за время inMoveDurationSecFloat.</p>
<p>!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Mouse: Взаимодействие с мышью</span>
<span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Mouse</span>
<span class="n">Mouse</span><span class="o">.</span><span class="n">MoveTo</span><span class="p">(</span><span class="n">inXInt</span><span class="o">=</span><span class="mi">100</span><span class="p">,</span> <span class="n">inYInt</span><span class="o">=</span><span class="mi">200</span><span class="p">)</span> <span class="c1">#Переместить указатель мыши по координатам: X(гор) 100, Y(вер) 200</span>
</pre></div>
</div>
<dl class="field-list simple"> <dl class="field-list simple">
<dt class="field-odd">Параметры</dt> <dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple"> <dd class="field-odd"><ul class="simple">
<li><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p></li> <li><p><strong>inXInt</strong> (<em>int</em><em>, </em><em>опциональный</em>) Целевая позиция указателя мыши по оси X (горизонтальная ось).</p></li>
<li><p><strong>inBackend</strong> «win32» or «uia»</p></li> <li><p><strong>inYInt</strong> (<em>int</em><em>, </em><em>опциональный</em>) Целевая позиция указателя мыши по оси Y (вертикальная ось).</p></li>
<li><p><strong>inMoveDurationSecFloat</strong> (<em>float</em><em>, </em><em>опциональный</em>) Время перемещения указателя мыши, По умолчанию 0.0 (моментальное перемещение)</p></li>
<li><p><strong>inWaitAfterSecFloat</strong> (<em>float</em><em>, </em><em>опциональный</em>) Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)</p></li>
</ul> </ul>
</dd> </dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_BitnessInt</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_BitnessInt"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt" title="Ссылка на это определение"></a></dt>
<dd><p>Detect process bitness by the UI Object UIO Selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inSpecificationList</strong> UIOSelector. Example: [{«title»:»notepad»},{«title»:»OK»}]</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>int 32 or int 64</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_BitnessStr</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_BitnessStr"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr" title="Ссылка на это определение"></a></dt>
<dd><p>Detect process bitness by the UI Object UIO Selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inSpecificationList</strong> UIOSelector. Example: [{«title»:»notepad»},{«title»:»OK»}]</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>str «32» or str «64»</p>
</dd>
</dl> </dl>
</dd></dl> </dd></dl>
<dl class="py function"> <dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO"> <dt id="pyOpenRPA.Robot.Mouse.ScrollHorizontal">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIO</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inElement</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inFlagRaiseException</span><span class="o">=</span><span class="default_value">True</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIO"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO" title="Ссылка на это определение"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Robot.Mouse.</code><code class="sig-name descname">ScrollHorizontal</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inScrollClickCountInt</span></em>, <em class="sig-param"><span class="n">inXInt</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inYInt</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inWaitAfterSecFloat</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">0.4</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/Mouse.html#ScrollHorizontal"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.Mouse.ScrollHorizontal" title="Ссылка на это определение"></a></dt>
<dd><p>Get the pywinauto object by the UIO selector.</p> <dd><p>!ТОЛЬКО ДЛЯ LINUX! Переместить указатель мыши на позицию inXInt, inYInt и выполнить горизонтальную прокрутку (скроллинг) виртуальным колесом мыши на количество щелчков inScrollClickCountInt.</p>
<p>!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Mouse: Взаимодействие с мышью</span>
<span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Mouse</span>
<span class="n">Mouse</span><span class="o">.</span><span class="n">ScrollHorizontal</span><span class="p">(</span><span class="mi">100</span><span class="p">,</span> <span class="n">inXInt</span><span class="o">=</span><span class="mi">100</span><span class="p">,</span> <span class="n">inYInt</span><span class="o">=</span><span class="mi">200</span><span class="p">)</span> <span class="c1">#Крутить колесо мыши вниз на 100 кликов по координатам: X(гор) 100, Y(вер) 200</span>
<span class="n">Mouse</span><span class="o">.</span><span class="n">ScrollHorizontal</span><span class="p">(</span><span class="o">-</span><span class="mi">100</span><span class="p">)</span> <span class="c1">#Крутить колесо мыши вверх на 100 кликов по текущим координатам указателя мыши.</span>
</pre></div>
</div>
<dl class="field-list simple"> <dl class="field-list simple">
<dt class="field-odd">Параметры</dt> <dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple"> <dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> </p></li> <li><p><strong>inScrollClickCountInt</strong> (<em>int</em><em>, </em><em>обязательный</em>) Количество щелчок колеса мыши, которое требуется !горизонтально! прокрутить. Аргумент может принимать как положительное (прокрутка вправо), так и отрицательное (прокрутка влево) значения</p></li>
<li><p><strong>inElement</strong> </p></li> <li><p><strong>inXInt</strong> (<em>int</em><em>, </em><em>опциональный</em>) Целевая позиция указателя мыши по оси X (горизонтальная ось).</p></li>
<li><p><strong>inFlagRaiseException</strong> </p></li> <li><p><strong>inYInt</strong> (<em>int</em><em>, </em><em>опциональный</em>) Целевая позиция указателя мыши по оси Y (вертикальная ось).</p></li>
<li><p><strong>inWaitAfterSecFloat</strong> (<em>float</em><em>, </em><em>опциональный</em>) Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)</p></li>
</ul> </ul>
</dd> </dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIOActivityList</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIOActivityList"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList" title="Ссылка на это определение"></a></dt>
<dd><p>Get the list of the UI object activities</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIOInfo</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIOInfo"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo" title="Ссылка на это определение"></a></dt>
<dd><p>Get the UIO dict of the attributes</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl> </dl>
</dd></dl> </dd></dl>
<dl class="py function"> <dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList"> <dt id="pyOpenRPA.Robot.Mouse.ScrollVertical">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIOList</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inElement</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inFlagRaiseException</span><span class="o">=</span><span class="default_value">True</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIOList"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList" title="Ссылка на это определение"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Robot.Mouse.</code><code class="sig-name descname">ScrollVertical</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inScrollClickCountInt</span></em>, <em class="sig-param"><span class="n">inXInt</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inYInt</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inWaitAfterSecFloat</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">0.4</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/Mouse.html#ScrollVertical"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.Mouse.ScrollVertical" title="Ссылка на это определение"></a></dt>
<dd><p>Get the UIO list by the selector</p> <dd><p>Переместить указатель мыши на позицию inXInt, inYInt и выполнить вертикальную прокрутку (скроллинг) колесом мыши на количество щелчков inScrollClickCountInt.</p>
<p>!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Mouse: Взаимодействие с мышью</span>
<span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Mouse</span>
<span class="n">Mouse</span><span class="o">.</span><span class="n">ScrollVertical</span><span class="p">(</span><span class="mi">100</span><span class="p">,</span> <span class="n">inXInt</span><span class="o">=</span><span class="mi">100</span><span class="p">,</span> <span class="n">inYInt</span><span class="o">=</span><span class="mi">200</span><span class="p">)</span> <span class="c1">#Крутить колесо мыши вниз на 100 кликов по координатам: X(гор) 100, Y(вер) 200</span>
<span class="n">Mouse</span><span class="o">.</span><span class="n">ScrollVertical</span><span class="p">(</span><span class="o">-</span><span class="mi">100</span><span class="p">)</span> <span class="c1">#Крутить колесо мыши вверх на 100 кликов по текущим координатам указателя мыши.</span>
</pre></div>
</div>
<dl class="field-list simple"> <dl class="field-list simple">
<dt class="field-odd">Параметры</dt> <dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple"> <dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> UIO Selector</p></li> <li><p><strong>inScrollClickCountInt</strong> (<em>int</em><em>, </em><em>обязательный</em>) Количество щелчок колеса мыши, которое требуется !вертикально! прокрутить. Аргумент может принимать как положительное (прокрутка вниз), так и отрицательное (прокрутка вверх) значения</p></li>
<li><p><strong>inElement</strong> Входной элемент - показатель, что не требуется выполнять коннект к процессу</p></li> <li><p><strong>inXInt</strong> (<em>int</em><em>, </em><em>опциональный</em>) Целевая позиция указателя мыши по оси X (горизонтальная ось).</p></li>
<li><p><strong>inFlagRaiseException</strong> Флаг True - выкинуть ошибку в случае обнаружении пустого списка</p></li> <li><p><strong>inYInt</strong> (<em>int</em><em>, </em><em>опциональный</em>) Целевая позиция указателя мыши по оси Y (вертикальная ось).</p></li>
<li><p><strong>inWaitAfterSecFloat</strong> (<em>float</em><em>, </em><em>опциональный</em>) Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)</p></li>
</ul> </ul>
</dd> </dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Highlight</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Highlight"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight" title="Ссылка на это определение"></a></dt>
<dd><p>Highlight (draw outline) the element (in app) by the UIO selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_SafeOtherGet_Process</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_SafeOtherGet_Process"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process" title="Ссылка на это определение"></a></dt>
<dd><p>Safe get other process or None if destination app is the other/same bitness</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIO Selector of the UI object</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>None or process (of the other bitness)</p>
</dd>
</dl> </dl>
</dd></dl> </dd></dl>
<dl class="py function"> <dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO"> <dt id="pyOpenRPA.Robot.Mouse.Up">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_SearchChildByMouse_UIO</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inElementSpecification</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_SearchChildByMouse_UIO"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO" title="Ссылка на это определение"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Robot.Mouse.</code><code class="sig-name descname">Up</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inXInt</span><span class="p">:</span> <span class="n">Optional<span class="p">[</span>int<span class="p">]</span></span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inYInt</span><span class="p">:</span> <span class="n">Optional<span class="p">[</span>int<span class="p">]</span></span> <span class="o">=</span> <span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inButtonStr</span><span class="p">:</span> <span class="n">str</span> <span class="o">=</span> <span class="default_value">'left'</span></em>, <em class="sig-param"><span class="n">inWaitAfterSecFloat</span><span class="p">:</span> <span class="n">float</span> <span class="o">=</span> <span class="default_value">0.4</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/Mouse.html#Up"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.Mouse.Up" title="Ссылка на это определение"></a></dt>
<dd><p>UIOSelector (see description on the top of the document) <dd><p>Отпустить (вверх) клавишу мыши. Если координаты inXInt, inYInt не переданы - нажатие происходит на тех координатах X/Y, на которых указатель мыши находится.</p>
#old name - AutomationSearchMouseElement</p> <p>!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области.</p>
<dl class="field-list simple"> <div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Mouse: Взаимодействие с мышью</span>
<dt class="field-odd">Параметры</dt> <span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Mouse</span>
<dd class="field-odd"><p><strong>inElementSpecification</strong> UIOSelector of the UI Object</p> <span class="n">Mouse</span><span class="o">.</span><span class="n">Up</span><span class="p">(</span><span class="n">inButtonStr</span><span class="p">:</span><span class="nb">str</span><span class="o">=</span><span class="s1">&#39;right&#39;</span><span class="p">)</span> <span class="c1">#Поднять правую клавишу мыши</span>
</dd> </pre></div>
<dt class="field-even">Результат</dt> </div>
<dd class="field-even"><p>pywinauto element wrapper instance or None</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_SearchChildByMouse_UIOTree</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_SearchChildByMouse_UIOTree"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree" title="Ссылка на это определение"></a></dt>
<dd><p>!!!!Safe call is included (you can set activity and UIDesktop will choose the bitness and return the result)!!!!!</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector of the UI Object</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p><p>?</p>
</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_TryRestore_Dict</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_TryRestore_Dict"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict" title="Ссылка на это определение"></a></dt>
<dd><p>Try to restore (maximize) window, if its minimized. (!IMPORTANT! When use UIA framework minimized windows doesnt appear by the UIOSelector. You need to try restore windows and after that try to get UIO)</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inSpecificationList</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorsSecs_WaitAppear_List</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationListList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em>, <em class="sig-param"><span class="n">inFlagWaitAllInMoment</span><span class="o">=</span><span class="default_value">False</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorsSecs_WaitAppear_List"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for many UI object will appear in GUI for inWaitSecs seconds.</p>
<dl class="field-list simple"> <dl class="field-list simple">
<dt class="field-odd">Параметры</dt> <dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple"> <dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationListList</strong> <p>UIOSelector list. <li><p><strong>inXInt</strong> (<em>int</em><em>, </em><em>опциональный</em>) Целевая позиция указателя мыши по оси X (горизонтальная ось).</p></li>
Example: [</p> <li><p><strong>inYInt</strong> (<em>int</em><em>, </em><em>опциональный</em>) Целевая позиция указателя мыши по оси Y (вертикальная ось).</p></li>
<blockquote> <li><p><strong>inButtonStr</strong> (<em>str</em><em>, </em><em>опциональный</em>) Номер кнопки, которую требуется поднять. Возможные варианты: „left“, „middle“, „right“ или 1, 2, 3. В остальных случаях инициирует исключение ValueError. По умолчанию „left“</p></li>
<div><p>[{«title»:»notepad»},{«title»:»OK»}], <li><p><strong>inWaitAfterSecFloat</strong> (<em>float</em><em>, </em><em>опциональный</em>) Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)</p></li>
[{«title»:»notepad»},{«title»:»Cancel»}]</p>
</div></blockquote>
<p>]</p>
</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element appear in GUI</p></li>
<li><p><strong>inFlagWaitAllInMoment</strong> True - Wait all UI objects from the UIOSelector list to be appeared</p></li>
</ul> </ul>
</dd> </dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>List of index, which UI object UIO will be appeared. Example: [1] # Appear only UI object with UIO selector: [{«title»:»notepad»},{«title»:»Cancel»}]</p>
</dd>
</dl> </dl>
</dd></dl> </dd></dl>
<dl class="py function"> </div>
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List"> <div class="section" id="id3">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorsSecs_WaitDisappear_List</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationListList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em>, <em class="sig-param"><span class="n">inFlagWaitAllInMoment</span><span class="o">=</span><span class="default_value">False</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorsSecs_WaitDisappear_List"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List" title="Ссылка на это определение"></a></dt> <h2>Быстрая навигация<a class="headerlink" href="#id3" title="Ссылка на этот заголовок"></a></h2>
<dd><p>Wait for many UI object will disappear in GUI for inWaitSecs seconds.</p> <ul class="simple">
<dl class="field-list simple"> <li><p><a class="reference external" href="https://t.me/pyOpenRPA">Сообщество pyOpenRPA (telegram)</a></p></li>
<dt class="field-odd">Параметры</dt> <li><p><a class="reference external" href="https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24">Сообщество pyOpenRPA (tenchat)</a></p></li>
<dd class="field-odd"><ul class="simple"> <li><p><a class="reference external" href="https://vk.com/pyopenrpa">Сообщество pyOpenRPA (вконтакте)</a></p></li>
<li><p><strong>inSpecificationListList</strong> <p>UIOSelector list. <li><p><a class="reference external" href="https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf">Презентация pyOpenRPA</a></p></li>
Example: [</p> <li><p><a class="reference external" href="https://pyopenrpa.ru">Портал pyOpenRPA</a></p></li>
<blockquote> <li><p><a class="reference external" href="https://gitlab.com/UnicodeLabs/OpenRPA">Репозиторий pyOpenRPA</a></p></li>
<div><p>[{«title»:»notepad»},{«title»:»OK»}],
[{«title»:»notepad»},{«title»:»Cancel»}]</p>
</div></blockquote>
<p>]</p>
</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element disappear in GUI</p></li>
<li><p><strong>inFlagWaitAllInMoment</strong> True - Wait all UI objects from the UIOSelector list to be disappeared.</p></li>
</ul> </ul>
</dd> <p> .. v1.2.12 replace:: v1.2.12</p>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>List of index, which UI object UIO will be disappeared. Example: [1] # Disappear only UI object with UIO selector: [{«title»:»notepad»},{«title»:»Cancel»}]</p>
</dd>
<dt class="field-odd">Результат</dt>
<dd class="field-odd"><p></p>
</dd>
</dl>
</dd></dl>
<div class="section" id="references">
<h2>References<a class="headerlink" href="#references" title="Ссылка на этот заголовок"></a></h2>
<p><a class="reference external" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> <a class="footnote-reference brackets" href="#id3" id="id4">1</a></p>
<dl class="footnote brackets">
<dt class="label" id="id3"><span class="brackets"><a class="fn-backref" href="#id4">1</a></span></dt>
<dd><p><a class="reference external" href="http://docutils.sourceforge.net/rst.html">http://docutils.sourceforge.net/rst.html</a></p>
</dd>
</dl>
<p> .. v1.2.12 replace:: v1.2.12
.. <a href="#id1"><span class="problematic" id="id2">|author|</span></a> replace:: Ivan Maslov &lt;<a class="reference external" href="mailto:ivan&#46;maslov&#37;&#52;&#48;unicodelabs&#46;ru">ivan<span>&#46;</span>maslov<span>&#64;</span>unicodelabs<span>&#46;</span>ru</a>&gt;</p>
<p></p> <p></p>
</div> </div>
</div> </div>
@ -665,8 +414,8 @@ Example: [</p>
</div> </div>
<footer> <footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="07_image.html" class="btn btn-neutral float-right" title="7. Image" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a> <a href="07_image.html" class="btn btn-neutral float-right" title="7. Функции Image" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="05_clipboard.html" class="btn btn-neutral float-left" title="5. Clipboard" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a> <a href="05_clipboard.html" class="btn btn-neutral float-left" title="5. Функции Clipboard" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a>
</div> </div>
<hr/> <hr/>

@ -7,7 +7,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>7. Image &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title> <title>7. Функции Image &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title>
@ -42,7 +42,7 @@
<link rel="index" title="Алфавитный указатель" href="../genindex.html" /> <link rel="index" title="Алфавитный указатель" href="../genindex.html" />
<link rel="search" title="Поиск" href="../search.html" /> <link rel="search" title="Поиск" href="../search.html" />
<link rel="next" title="8. Как использовать?" href="08_HowToUse.html" /> <link rel="next" title="8. Как использовать?" href="08_HowToUse.html" />
<link rel="prev" title="6. Mouse" href="06_mouse.html" /> <link rel="prev" title="6. Функции Mouse" href="06_mouse.html" />
</head> </head>
<body class="wy-body-for-nav"> <body class="wy-body-for-nav">
@ -91,23 +91,22 @@
<ul> <ul>
<li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li> <li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li>
<li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li> <li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li>
<li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Права &amp; Контакты</a></li> <li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Лицензия &amp; Контакты</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p>
<ul class="current"> <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="01_Robot.html">1. Описание</a></li> <li class="toctree-l1"><a class="reference internal" href="01_Robot.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="02_Defs.html">2. Функции</a></li> <li class="toctree-l1"><a class="reference internal" href="02_uidesktop.html">2. Функции UIDesktop</a></li>
<li class="toctree-l1"><a class="reference internal" href="02_uidesktop.html">2. UIDesktop</a></li> <li class="toctree-l1"><a class="reference internal" href="03_uiweb.html">3. Функции UIWeb</a></li>
<li class="toctree-l1"><a class="reference internal" href="03_uiweb.html">3. UIWeb</a></li> <li class="toctree-l1"><a class="reference internal" href="04_keyboard.html">4. Функции Keyboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="04_keyboard.html">4. Keyboard</a></li> <li class="toctree-l1"><a class="reference internal" href="05_clipboard.html">5. Функции Clipboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="05_clipboard.html">5. Clipboard</a></li> <li class="toctree-l1"><a class="reference internal" href="06_mouse.html">6. Функции Mouse</a></li>
<li class="toctree-l1"><a class="reference internal" href="06_mouse.html">6. Mouse</a></li> <li class="toctree-l1 current"><a class="current reference internal" href="#">7. Функции Image</a><ul>
<li class="toctree-l1 current"><a class="current reference internal" href="#">7. Image</a><ul> <li class="toctree-l2"><a class="reference internal" href="#id1">Общее</a></li>
<li class="toctree-l2"><a class="reference internal" href="#references">References</a></li> <li class="toctree-l2"><a class="reference internal" href="#id2">Быстрая навигация</a></li>
</ul> </ul>
</li> </li>
<li class="toctree-l1"><a class="reference internal" href="08_HowToUse.html">8. Как использовать?</a></li> <li class="toctree-l1"><a class="reference internal" href="08_HowToUse.html">8. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="09_Dependencies.html">9. Зависимости</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p>
<ul> <ul>
@ -116,20 +115,19 @@
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Description</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Функции</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. gSettings Template</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. Настройки GSettings (шаблон)</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. How to use</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. UAC - User Access Control</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. Права доступа пользователей UAC</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/06_Defs%20Managers.html">6. Defs Managers</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Функции</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p> <p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Defs StopSafe</a></li> <li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Функции StopSafe</a></li>
</ul> </ul>
@ -178,7 +176,7 @@
<li><a href="../index.html" class="icon icon-home"></a> &raquo;</li> <li><a href="../index.html" class="icon icon-home"></a> &raquo;</li>
<li>7. Image</li> <li>7. Функции Image</li>
<li class="wy-breadcrumbs-aside"> <li class="wy-breadcrumbs-aside">
@ -198,463 +196,26 @@
<div itemprop="articleBody"> <div itemprop="articleBody">
<div class="section" id="image"> <div class="section" id="image">
<span id="module-robot-image"></span><h1>7. Image<a class="headerlink" href="#image" title="Ссылка на этот заголовок"></a></h1> <span id="module-robot-image"></span><h1>7. Функции Image<a class="headerlink" href="#image" title="Ссылка на этот заголовок"></a></h1>
<p>Here you can find the functions description for interaction with desktop GUI applications</p> <div class="section" id="id1">
<p>How to use both x32 and x64 python processes (it can be helpfully, if another app GUI is on another bitness than your app)</p> <h2>Общее<a class="headerlink" href="#id1" title="Ссылка на этот заголовок"></a></h2>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">UIDesktop</span> <p>Документация к модулю будет опубликована в Июле 2022. По всем вопросам роботизации WEB приложений обращайтесь в центр поддержки клиентов pyOpenRPA.</p>
<span class="c1">#Section for robot init</span> <p>Дорогие коллеги!</p>
<span class="n">lPyOpenRPA_SettingsDict</span> <span class="o">=</span> <span class="p">{</span> <p>Мы знаем, что с pyOpenRPA вы сможете существенно улучшить качество вашего бизнеса. Платформа роботизации pyOpenRPA - это разработка, которая дает возможность делать виртуальных сотрудников (программных роботов RPA) выгодными, начиная от эффекта всего в <strong>10 тыс. руб.</strong> И управлять ими будете только Вы!</p>
<span class="s2">&quot;Python32FullPath&quot;</span><span class="p">:</span> <span class="s2">&quot;..</span><span class="se">\\</span><span class="s2">Resources</span><span class="se">\\</span><span class="s2">WPy32-3720</span><span class="se">\\</span><span class="s2">python-3.7.2</span><span class="se">\\</span><span class="s2">python.exe&quot;</span><span class="p">,</span> <span class="c1">#Set from user: &quot;..\\Resources\\WPy32-3720\\python-3.7.2\\OpenRPARobotGUIx32.exe&quot;</span> <p>Если у вас останутся вопросы, то вы всегда можете обратиться в центр поддержки клиентов pyOpenRPA. Контакты: <a class="reference internal" href="../03_Copyrights_Contacts.html#copyrights-contacts"><span class="std std-ref">2. Лицензия &amp; Контакты</span></a></p>
<span class="s2">&quot;Python64FullPath&quot;</span><span class="p">:</span> <span class="s2">&quot;..</span><span class="se">\\</span><span class="s2">Resources</span><span class="se">\\</span><span class="s2">WPy64-3720</span><span class="se">\\</span><span class="s2">python-3.7.2.amd64</span><span class="se">\\</span><span class="s2">python.exe&quot;</span><span class="p">,</span> <span class="c1">#Set from user</span> <p>pyOpenRPA - роботы помогут!</p>
<span class="s2">&quot;Python32ProcessName&quot;</span><span class="p">:</span> <span class="s2">&quot;pyOpenRPA_UIDesktopX32.exe&quot;</span><span class="p">,</span> <span class="c1">#Config set once</span>
<span class="s2">&quot;Python64ProcessName&quot;</span><span class="p">:</span> <span class="s2">&quot;pyOpenRPA_UIDesktopX64.exe&quot;</span> <span class="c1">#Config set once</span>
<span class="p">}</span>
<span class="c1"># Init the pyOpenRPA configuration</span>
<span class="n">UIDesktop</span><span class="o">.</span><span class="n">Utils</span><span class="o">.</span><span class="n">ProcessBitness</span><span class="o">.</span><span class="n">SettingsInit</span><span class="p">(</span><span class="n">lPyOpenRPA_SettingsDict</span><span class="p">)</span>
<span class="c1"># Now you can use pyOpenRPA with both bitness.</span>
</pre></div>
</div> </div>
<span class="target" id="module-pyOpenRPA.Robot.UIDesktop"></span><p><strong>Functions:</strong></p> <div class="section" id="id2">
<table class="longtable docutils align-default"> <h2>Быстрая навигация<a class="headerlink" href="#id2" title="Ссылка на этот заголовок"></a></h2>
<colgroup> <ul class="simple">
<col style="width: 10%" /> <li><p><a class="reference external" href="https://t.me/pyOpenRPA">Сообщество pyOpenRPA (telegram)</a></p></li>
<col style="width: 90%" /> <li><p><a class="reference external" href="https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24">Сообщество pyOpenRPA (tenchat)</a></p></li>
</colgroup> <li><p><a class="reference external" href="https://vk.com/pyopenrpa">Сообщество pyOpenRPA (вконтакте)</a></p></li>
<tbody> <li><p><a class="reference external" href="https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf">Презентация pyOpenRPA</a></p></li>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt" title="pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt"><code class="xref py py-obj docutils literal notranslate"><span class="pre">Get_OSBitnessInt</span></code></a>()</p></td> <li><p><a class="reference external" href="https://pyopenrpa.ru">Портал pyOpenRPA</a></p></li>
<td><p>Detect OS bitness.</p></td> <li><p><a class="reference external" href="https://gitlab.com/UnicodeLabs/OpenRPA">Репозиторий pyOpenRPA</a></p></li>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication" title="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication"><code class="xref py py-obj docutils literal notranslate"><span class="pre">PWASpecification_Get_PWAApplication</span></code></a>(…)</p></td>
<td><p>#Backend selection - attribute «backend» («win32» || «uia») in 1-st list element</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO" title="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO"><code class="xref py py-obj docutils literal notranslate"><span class="pre">PWASpecification_Get_UIO</span></code></a>(…)</p></td>
<td><p>#Backend def selection - attribute «backend» («win32» || «uia») in 1-st list element #old name - GetControl</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorSecs_WaitAppear_Bool</span></code></a>(…)</p></td>
<td><p>Wait for UI object will appear in GUI for inWaitSecs seconds.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorSecs_WaitDisappear_Bool</span></code></a>(…)</p></td>
<td><p>Wait for UI object will disappear in GUI for inWaitSecs seconds.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorUIOActivity_Run_Dict</span></code></a>(…[, …])</p></td>
<td><p>Run the activity in UIO (UI Object)</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Exist_Bool</span></code></a>(inUIOSelector)</p></td>
<td><p>Check if object is exist by the UIO selector.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_FocusHighlight</span></code></a>(inUIOSelector)</p></td>
<td><p>Set focus and highlight (draw outline) the element (in app) by the UIO selector.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_GetChildList_UIOList</span></code></a>([…])</p></td>
<td><p>Get list of child UIOs by the parent UIOSelector</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_BitnessInt</span></code></a>(inSpecificationList)</p></td>
<td><p>Detect process bitness by the UI Object UIO Selector.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_BitnessStr</span></code></a>(inSpecificationList)</p></td>
<td><p>Detect process bitness by the UI Object UIO Selector.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIO</span></code></a>(inSpecificationList[, …])</p></td>
<td><p>Get the pywinauto object by the UIO selector.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIOActivityList</span></code></a>(inUIOSelector)</p></td>
<td><p>Get the list of the UI object activities</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIOInfo</span></code></a>(inUIOSelector)</p></td>
<td><p>Get the UIO dict of the attributes</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Get_UIOList</span></code></a>(inSpecificationList)</p></td>
<td><p>Get the UIO list by the selector</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_Highlight</span></code></a>(inUIOSelector)</p></td>
<td><p>Highlight (draw outline) the element (in app) by the UIO selector.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_SafeOtherGet_Process</span></code></a>(inUIOSelector)</p></td>
<td><p>Safe get other process or None if destination app is the other/same bitness</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_SearchChildByMouse_UIO</span></code></a>(…)</p></td>
<td><p>UIOSelector (see description on the top of the document) #old name - AutomationSearchMouseElement</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_SearchChildByMouse_UIOTree</span></code></a>(…)</p></td>
<td><p>!!!!Safe call is included (you can set activity and UIDesktop will choose the bitness and return the result)!!!!!</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict" title="pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelector_TryRestore_Dict</span></code></a>(inSpecificationList)</p></td>
<td><p>Try to restore (maximize) window, if its minimized.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorsSecs_WaitAppear_List</span></code></a>(…[, …])</p></td>
<td><p>Wait for many UI object will appear in GUI for inWaitSecs seconds.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List" title="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UIOSelectorsSecs_WaitDisappear_List</span></code></a>(…[, …])</p></td>
<td><p>Wait for many UI object will disappear in GUI for inWaitSecs seconds.</p></td>
</tr>
</tbody>
</table>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">Get_OSBitnessInt</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#Get_OSBitnessInt"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.Get_OSBitnessInt" title="Ссылка на это определение"></a></dt>
<dd><p>Detect OS bitness.</p>
<dl class="field-list simple">
<dt class="field-odd">Результат</dt>
<dd class="field-odd"><p>int 32 or int 64</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">PWASpecification_Get_PWAApplication</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inControlSpecificationArray</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#PWASpecification_Get_PWAApplication"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_PWAApplication" title="Ссылка на это определение"></a></dt>
<dd><p>#Backend selection - attribute «backend» («win32» || «uia») in 1-st list element</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inControlSpecificationArray</strong> List of dict, dict in pywinauto.find_windows notation</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>process application object</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">PWASpecification_Get_UIO</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inControlSpecificationArray</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#PWASpecification_Get_UIO"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.PWASpecification_Get_UIO" title="Ссылка на это определение"></a></dt>
<dd><p>#Backend def selection - attribute «backend» («win32» || «uia») in 1-st list element
#old name - GetControl</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inControlSpecificationArray</strong> List of dict, dict in pywinauto.find_windows notation</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>list of UIO object</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorSecs_WaitAppear_Bool</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorSecs_WaitAppear_Bool"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitAppear_Bool" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for UI object will appear in GUI for inWaitSecs seconds.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> UIOSelector. Example: [{«title»:»notepad»},{«title»:»OK»}]</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element appear in GUI</p></li>
</ul> </ul>
</dd> <p> .. v1.2.12 replace:: v1.2.12</p>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>True - UI object will appear. False - else case</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorSecs_WaitDisappear_Bool</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorSecs_WaitDisappear_Bool"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorSecs_WaitDisappear_Bool" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for UI object will disappear in GUI for inWaitSecs seconds.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> UIOSelector.
Example: [{«title»:»notepad»},{«title»:»OK»}]</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element disappear in GUI</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>True - UI object will disappear. False - else case</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorUIOActivity_Run_Dict</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em>, <em class="sig-param"><span class="n">inActionName</span></em>, <em class="sig-param"><span class="n">inArgumentList</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inkwArgumentObject</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorUIOActivity_Run_Dict"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorUIOActivity_Run_Dict" title="Ссылка на это определение"></a></dt>
<dd><p>Run the activity in UIO (UI Object)</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p></li>
<li><p><strong>inActionName</strong> UIOActivity (name) activity name string from Pywinauto</p></li>
<li><p><strong>inArgumentList</strong> </p></li>
<li><p><strong>inkwArgumentObject</strong> </p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Exist_Bool</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Exist_Bool"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Exist_Bool" title="Ссылка на это определение"></a></dt>
<dd><p>Check if object is exist by the UIO selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> </p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>True - Object is exist. False - else case</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_FocusHighlight</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_FocusHighlight"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_FocusHighlight" title="Ссылка на это определение"></a></dt>
<dd><p>Set focus and highlight (draw outline) the element (in app) by the UIO selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_GetChildList_UIOList</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inBackend</span><span class="o">=</span><span class="default_value">'win32'</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_GetChildList_UIOList"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_GetChildList_UIOList" title="Ссылка на это определение"></a></dt>
<dd><p>Get list of child UIOs by the parent UIOSelector</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p></li>
<li><p><strong>inBackend</strong> «win32» or «uia»</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_BitnessInt</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_BitnessInt"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessInt" title="Ссылка на это определение"></a></dt>
<dd><p>Detect process bitness by the UI Object UIO Selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inSpecificationList</strong> UIOSelector. Example: [{«title»:»notepad»},{«title»:»OK»}]</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>int 32 or int 64</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_BitnessStr</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_BitnessStr"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_BitnessStr" title="Ссылка на это определение"></a></dt>
<dd><p>Detect process bitness by the UI Object UIO Selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inSpecificationList</strong> UIOSelector. Example: [{«title»:»notepad»},{«title»:»OK»}]</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>str «32» or str «64»</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIO</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inElement</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inFlagRaiseException</span><span class="o">=</span><span class="default_value">True</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIO"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIO" title="Ссылка на это определение"></a></dt>
<dd><p>Get the pywinauto object by the UIO selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> </p></li>
<li><p><strong>inElement</strong> </p></li>
<li><p><strong>inFlagRaiseException</strong> </p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIOActivityList</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIOActivityList"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOActivityList" title="Ссылка на это определение"></a></dt>
<dd><p>Get the list of the UI object activities</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIOInfo</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIOInfo"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOInfo" title="Ссылка на это определение"></a></dt>
<dd><p>Get the UIO dict of the attributes</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Get_UIOList</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em>, <em class="sig-param"><span class="n">inElement</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inFlagRaiseException</span><span class="o">=</span><span class="default_value">True</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Get_UIOList"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Get_UIOList" title="Ссылка на это определение"></a></dt>
<dd><p>Get the UIO list by the selector</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationList</strong> UIO Selector</p></li>
<li><p><strong>inElement</strong> Входной элемент - показатель, что не требуется выполнять коннект к процессу</p></li>
<li><p><strong>inFlagRaiseException</strong> Флаг True - выкинуть ошибку в случае обнаружении пустого списка</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_Highlight</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_Highlight"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_Highlight" title="Ссылка на это определение"></a></dt>
<dd><p>Highlight (draw outline) the element (in app) by the UIO selector.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_SafeOtherGet_Process</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_SafeOtherGet_Process"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_SafeOtherGet_Process" title="Ссылка на это определение"></a></dt>
<dd><p>Safe get other process or None if destination app is the other/same bitness</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIO Selector of the UI object</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>None or process (of the other bitness)</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_SearchChildByMouse_UIO</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inElementSpecification</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_SearchChildByMouse_UIO"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIO" title="Ссылка на это определение"></a></dt>
<dd><p>UIOSelector (see description on the top of the document)
#old name - AutomationSearchMouseElement</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inElementSpecification</strong> UIOSelector of the UI Object</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>pywinauto element wrapper instance or None</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_SearchChildByMouse_UIOTree</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inUIOSelector</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_SearchChildByMouse_UIOTree"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_SearchChildByMouse_UIOTree" title="Ссылка на это определение"></a></dt>
<dd><p>!!!!Safe call is included (you can set activity and UIDesktop will choose the bitness and return the result)!!!!!</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inUIOSelector</strong> UIOSelector of the UI Object</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p><p>?</p>
</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelector_TryRestore_Dict</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationList</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelector_TryRestore_Dict"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelector_TryRestore_Dict" title="Ссылка на это определение"></a></dt>
<dd><p>Try to restore (maximize) window, if its minimized. (!IMPORTANT! When use UIA framework minimized windows doesnt appear by the UIOSelector. You need to try restore windows and after that try to get UIO)</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><p><strong>inSpecificationList</strong> UIOSelector - List of items, which contains condition attributes</p>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorsSecs_WaitAppear_List</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationListList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em>, <em class="sig-param"><span class="n">inFlagWaitAllInMoment</span><span class="o">=</span><span class="default_value">False</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorsSecs_WaitAppear_List"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitAppear_List" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for many UI object will appear in GUI for inWaitSecs seconds.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationListList</strong> <p>UIOSelector list.
Example: [</p>
<blockquote>
<div><p>[{«title»:»notepad»},{«title»:»OK»}],
[{«title»:»notepad»},{«title»:»Cancel»}]</p>
</div></blockquote>
<p>]</p>
</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element appear in GUI</p></li>
<li><p><strong>inFlagWaitAllInMoment</strong> True - Wait all UI objects from the UIOSelector list to be appeared</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>List of index, which UI object UIO will be appeared. Example: [1] # Appear only UI object with UIO selector: [{«title»:»notepad»},{«title»:»Cancel»}]</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List">
<code class="sig-prename descclassname">pyOpenRPA.Robot.UIDesktop.</code><code class="sig-name descname">UIOSelectorsSecs_WaitDisappear_List</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inSpecificationListList</span></em>, <em class="sig-param"><span class="n">inWaitSecs</span></em>, <em class="sig-param"><span class="n">inFlagWaitAllInMoment</span><span class="o">=</span><span class="default_value">False</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Robot/UIDesktop.html#UIOSelectorsSecs_WaitDisappear_List"><span class="viewcode-link">[исходный код]</span></a><a class="headerlink" href="#pyOpenRPA.Robot.UIDesktop.UIOSelectorsSecs_WaitDisappear_List" title="Ссылка на это определение"></a></dt>
<dd><p>Wait for many UI object will disappear in GUI for inWaitSecs seconds.</p>
<dl class="field-list simple">
<dt class="field-odd">Параметры</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inSpecificationListList</strong> <p>UIOSelector list.
Example: [</p>
<blockquote>
<div><p>[{«title»:»notepad»},{«title»:»OK»}],
[{«title»:»notepad»},{«title»:»Cancel»}]</p>
</div></blockquote>
<p>]</p>
</p></li>
<li><p><strong>inWaitSecs</strong> Float value (seconds) for wait UI element disappear in GUI</p></li>
<li><p><strong>inFlagWaitAllInMoment</strong> True - Wait all UI objects from the UIOSelector list to be disappeared.</p></li>
</ul>
</dd>
<dt class="field-even">Результат</dt>
<dd class="field-even"><p>List of index, which UI object UIO will be disappeared. Example: [1] # Disappear only UI object with UIO selector: [{«title»:»notepad»},{«title»:»Cancel»}]</p>
</dd>
<dt class="field-odd">Результат</dt>
<dd class="field-odd"><p></p>
</dd>
</dl>
</dd></dl>
<div class="section" id="references">
<h2>References<a class="headerlink" href="#references" title="Ссылка на этот заголовок"></a></h2>
<p><a class="reference external" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> <a class="footnote-reference brackets" href="#id3" id="id4">1</a></p>
<dl class="footnote brackets">
<dt class="label" id="id3"><span class="brackets"><a class="fn-backref" href="#id4">1</a></span></dt>
<dd><p><a class="reference external" href="http://docutils.sourceforge.net/rst.html">http://docutils.sourceforge.net/rst.html</a></p>
</dd>
</dl>
<p> .. v1.2.12 replace:: v1.2.12
.. <a href="#id1"><span class="problematic" id="id2">|author|</span></a> replace:: Ivan Maslov &lt;<a class="reference external" href="mailto:ivan&#46;maslov&#37;&#52;&#48;unicodelabs&#46;ru">ivan<span>&#46;</span>maslov<span>&#64;</span>unicodelabs<span>&#46;</span>ru</a>&gt;</p>
<p></p> <p></p>
</div> </div>
</div> </div>
@ -666,7 +227,7 @@ Example: [</p>
<footer> <footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="08_HowToUse.html" class="btn btn-neutral float-right" title="8. Как использовать?" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a> <a href="08_HowToUse.html" class="btn btn-neutral float-right" title="8. Как использовать?" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="06_mouse.html" class="btn btn-neutral float-left" title="6. Mouse" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a> <a href="06_mouse.html" class="btn btn-neutral float-left" title="6. Функции Mouse" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a>
</div> </div>
<hr/> <hr/>

@ -41,8 +41,8 @@
<link rel="index" title="Алфавитный указатель" href="../genindex.html" /> <link rel="index" title="Алфавитный указатель" href="../genindex.html" />
<link rel="search" title="Поиск" href="../search.html" /> <link rel="search" title="Поиск" href="../search.html" />
<link rel="next" title="9. Зависимости" href="09_Dependencies.html" /> <link rel="next" title="1. Описание" href="../Studio/01_Studio.html" />
<link rel="prev" title="7. Image" href="07_image.html" /> <link rel="prev" title="7. Функции Image" href="07_image.html" />
</head> </head>
<body class="wy-body-for-nav"> <body class="wy-body-for-nav">
@ -91,49 +91,29 @@
<ul> <ul>
<li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li> <li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li>
<li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li> <li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li>
<li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Права &amp; Контакты</a></li> <li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Лицензия &amp; Контакты</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p>
<ul class="current"> <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="01_Robot.html">1. Описание</a></li> <li class="toctree-l1"><a class="reference internal" href="01_Robot.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="02_Defs.html">2. Функции</a></li> <li class="toctree-l1"><a class="reference internal" href="02_uidesktop.html">2. Функции UIDesktop</a></li>
<li class="toctree-l1"><a class="reference internal" href="02_uidesktop.html">2. UIDesktop</a></li> <li class="toctree-l1"><a class="reference internal" href="03_uiweb.html">3. Функции UIWeb</a></li>
<li class="toctree-l1"><a class="reference internal" href="03_uiweb.html">3. UIWeb</a></li> <li class="toctree-l1"><a class="reference internal" href="04_keyboard.html">4. Функции Keyboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="04_keyboard.html">4. Keyboard</a></li> <li class="toctree-l1"><a class="reference internal" href="05_clipboard.html">5. Функции Clipboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="05_clipboard.html">5. Clipboard</a></li> <li class="toctree-l1"><a class="reference internal" href="06_mouse.html">6. Функции Mouse</a></li>
<li class="toctree-l1"><a class="reference internal" href="06_mouse.html">6. Mouse</a></li> <li class="toctree-l1"><a class="reference internal" href="07_image.html">7. Функции Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="07_image.html">7. Image</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">8. Как использовать?</a><ul> <li class="toctree-l1 current"><a class="current reference internal" href="#">8. Как использовать?</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#how-to-execute-rpa-script">How to execute RPA script</a><ul> <li class="toctree-l2"><a class="reference internal" href="#id2">Как запустить скрипт робота?</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#create-python-script">Create python script</a></li> <li class="toctree-l3"><a class="reference internal" href="#python-py">Скрипт Python (файл .py)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#execute-python-script">Execute python script</a></li> <li class="toctree-l3"><a class="reference internal" href="#execute-python-script">Execute python script</a></li>
<li class="toctree-l3"><a class="reference internal" href="#execute-in-the-python-x32">Execute in the Python x32</a></li> <li class="toctree-l3"><a class="reference internal" href="#python-x32">Запустить из интерпретатора Python x32</a></li>
<li class="toctree-l3"><a class="reference internal" href="#execute-in-the-python-x64">Execute in the Python x64</a></li> <li class="toctree-l3"><a class="reference internal" href="#python-x64">Запустить из интерпретатора Python x64</a></li>
<li class="toctree-l3"><a class="reference internal" href="#execute-from-cmd-file">Execute from .cmd file</a></li> <li class="toctree-l3"><a class="reference internal" href="#cmd">Запустить из под .cmd файла</a></li>
<li class="toctree-l3"><a class="reference internal" href="#use-in-studio-script-n-a">Use in studio script (n/a)</a></li>
</ul> </ul>
</li> </li>
<li class="toctree-l2"><a class="reference internal" href="#desktop-app-ui-access-win32-and-ui-automation-dlls">Desktop app UI access (win32 and UI automation dlls)</a><ul> <li class="toctree-l2"><a class="reference internal" href="#id3">Быстрая навигация</a></li>
<li class="toctree-l3"><a class="reference internal" href="#definitions">Definitions</a></li>
<li class="toctree-l3"><a class="reference internal" href="#what-is-uio">What is UIO?</a></li>
<li class="toctree-l3"><a class="reference internal" href="#uioselector-structure-example">UIOSelector structure &amp; example</a></li>
<li class="toctree-l3"><a class="reference internal" href="#the-uidesktop-module-openrpa-robot-uidesktop-py">The UIDesktop module (OpenRPA/Robot/UIDesktop.py)</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id2">The UIDesktop module (OpenRPA/Robot/UIDesktop.py)</a></li>
</ul> </ul>
</li> </li>
<li class="toctree-l2"><a class="reference internal" href="#theory-practice-web-app-ui-access-selenium">Theory &amp; practice. WEB app UI access (selenium)</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#about">About</a></li>
<li class="toctree-l3"><a class="reference internal" href="#how-to-use">How to use</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#theory-practice-keyboard-mouse-manipulation">Theory &amp; practice. Keyboard &amp; mouse manipulation</a></li>
<li class="toctree-l2"><a class="reference internal" href="#theory-practice-screen-capture-image-recognition">Theory &amp; practice. Screen capture &amp; image recognition</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#how-to-automate-image-recognition-on-pc">How to automate image recognition on PC</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="09_Dependencies.html">9. Зависимости</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p>
<ul> <ul>
@ -142,20 +122,19 @@
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Description</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Функции</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. gSettings Template</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. Настройки GSettings (шаблон)</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. How to use</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. UAC - User Access Control</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. Права доступа пользователей UAC</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/06_Defs%20Managers.html">6. Defs Managers</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Функции</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p> <p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Defs StopSafe</a></li> <li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Функции StopSafe</a></li>
</ul> </ul>
@ -225,201 +204,80 @@
<div class="section" id="id1"> <div class="section" id="id1">
<h1>8. Как использовать?<a class="headerlink" href="#id1" title="Ссылка на этот заголовок"></a></h1> <h1>8. Как использовать?<a class="headerlink" href="#id1" title="Ссылка на этот заголовок"></a></h1>
<p>The Robot tool is the main module for production process automation. It has no graphic/console interface. All low-level actions to OS are perfoming by the Robot tool in pyOpenRPA.</p> <p>Модуль РОБОТ - это ключевое звено, которое отвечает за продуктивную роботизацию процесса. Данный модуль не имеет графический или консольный интерфейс - он подключается в качестве библиотеки в проект робота, что позволяет выполнять операции максимально быстро. А также позволяет с легкостью интегрировать робота в другие проекты.</p>
<div class="section" id="how-to-execute-rpa-script"> <div class="section" id="id2">
<h2>How to execute RPA script<a class="headerlink" href="#how-to-execute-rpa-script" title="Ссылка на этот заголовок"></a></h2> <h2>Как запустить скрипт робота?<a class="headerlink" href="#id2" title="Ссылка на этот заголовок"></a></h2>
<p>You can use the robot by the several ways:</p> <p>Запустить скрипт робота можно 2-мя способами:</p>
<ul class="simple"> <ul class="simple">
<li><p>In Python script</p></li> <li><p>Скрипт Python (файл .py)</p></li>
<li><p>In Studio script (n/a)</p></li> <li><p>Скрипт в Студии pyOpenRPA</p></li>
</ul> </ul>
<div class="section" id="create-python-script"> <div class="section" id="python-py">
<h3>Create python script<a class="headerlink" href="#create-python-script" title="Ссылка на этот заголовок"></a></h3> <h3>Скрипт Python (файл .py)<a class="headerlink" href="#python-py" title="Ссылка на этот заголовок"></a></h3>
<p>In order to use robot just add Robot tool folder in work directory and add line «import GUI» in your script.</p> <p>Чтобы начать использовать модуль робота достаточно выполнить в файле скрипта соответсвующие команды импорта:</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">sys</span> <div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">sys</span>
<span class="n">sys</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">&#39;../../&#39;</span><span class="p">)</span> <span class="n">sys</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">&#39;../../&#39;</span><span class="p">)</span>
<span class="kn">import</span> <span class="nn">selenium</span> <span class="c1"># [Web app access](https://gitlab.com/UnicodeLabs/OpenRPA/wikis/05.1.-Theory-&amp;-practice:-Web-app-access-(Chrome,-Firefox,-Opera))&lt;br&gt;</span> <span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">UIDesktop</span> <span class="c1"># Взаимодействие с UI объектами приложений</span>
<span class="kn">import</span> <span class="nn">GUI</span> <span class="c1"># [Win32 &amp; UI Automation access](https://gitlab.com/UnicodeLabs/OpenRPA/wikis/05.2.-Theory-&amp;-practice:-Desktop-app-UI-access-(win32-and-UI-automation-dlls)) &lt;br&gt;</span> <span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">UIWeb</span> <span class="c1"># Взаимодействие с UI объектами веб приложений</span>
<span class="kn">import</span> <span class="nn">pyautogui</span> <span class="c1">#[Screen capture/recognition](https://gitlab.com/UnicodeLabs/OpenRPA/wikis/05.4.-Theory-&amp;-practice:-Screen-capture-&amp;-image-recognition) [#Mouse manipulation](https://gitlab.com/UnicodeLabs/OpenRPA/wikis/05.3.-Theory-&amp;-practice:-Keyboard-&amp;-mouse-manipulation)&lt;br&gt;</span> <span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Keyboard</span> <span class="c1"># Взаимодействие с клавиатурой</span>
<span class="kn">import</span> <span class="nn">cv2</span> <span class="c1"># [Computer vision](https://gitlab.com/UnicodeLabs/OpenRPA/wikis/05.4.-Theory-&amp;-practice:-Screen-capture-&amp;-image-recognition)&lt;br&gt;</span> <span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Clipboard</span> <span class="c1"># Взаимодействие с буфером обмена</span>
<span class="kn">import</span> <span class="nn">keyboard</span> <span class="c1">#[Keyboard manipulation](https://gitlab.com/UnicodeLabs/OpenRPA/wikis/05.3.-Theory-&amp;-practice:-Keyboard-&amp;-mouse-manipulation)&lt;br&gt;</span> <span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Mouse</span> <span class="c1"># Взаимодействие с мышью</span>
<span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">Image</span> <span class="c1"># Взаимодействие с графической сессией ОС</span>
</pre></div> </pre></div>
</div> </div>
<p>Описание каждого из этих модулей представлены в разделе «МОДУЛЬ РОБОТ»</p>
</div> </div>
<div class="section" id="execute-python-script"> <div class="section" id="execute-python-script">
<h3>Execute python script<a class="headerlink" href="#execute-python-script" title="Ссылка на этот заголовок"></a></h3> <h3>Execute python script<a class="headerlink" href="#execute-python-script" title="Ссылка на этот заголовок"></a></h3>
<p>The pyOpenRPA is fully portable solution. It contains own python enviroment both 32 and 64 bit versions. So, you can execute your python script in several ways: <p>pyOpenRPA - это максимально инкапсулированная платформа программной роботизаии RPA. Все необходимые зависимости находятся внутри нее, что позволяет копировать робота между ЭВМ максимально просто.</p>
- Execute in python x32 (OpenRPAResourcesWPy32-3720python-3.7.2) <p>Вы можете запустить скрипт робота RPA следующими способами:</p>
- Execute in python x64 (OpenRPAResourcesWPy64-3720python-3.7.2.amd64)
- Execute from .cmd file</p>
</div>
<div class="section" id="execute-in-the-python-x32">
<h3>Execute in the Python x32<a class="headerlink" href="#execute-in-the-python-x32" title="Ссылка на этот заголовок"></a></h3>
<p>To execute your python script in x32 bit version just write in command line from x32 python directory:</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="n">cd</span> <span class="s2">&quot;\OpenRPA\Resources\WPy32-3720\python-3.7.2&quot;</span>
<span class="n">python</span><span class="o">.</span><span class="n">exe</span> <span class="s2">&quot;path to your python script.py&quot;</span>
</pre></div>
</div>
</div>
<div class="section" id="execute-in-the-python-x64">
<h3>Execute in the Python x64<a class="headerlink" href="#execute-in-the-python-x64" title="Ссылка на этот заголовок"></a></h3>
<p>To execute your python script in x32 bit version just write in command line from x32 python directory:</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="n">cd</span> <span class="s2">&quot;\OpenRPA\Resources\WPy64-3720\python-3.7.2.amd64&quot;</span>
<span class="n">python</span><span class="o">.</span><span class="n">exe</span> <span class="s2">&quot;path to your python script.py&quot;</span>
</pre></div>
</div>
</div>
<div class="section" id="execute-from-cmd-file">
<h3>Execute from .cmd file<a class="headerlink" href="#execute-from-cmd-file" title="Ссылка на этот заголовок"></a></h3>
<p>In order to simplify the execution process you can write several code lines in file with the .cmd extension:</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="n">cd</span> <span class="o">%~</span><span class="n">dp0</span>
<span class="n">copy</span> <span class="o">/</span><span class="n">Y</span> <span class="o">..</span>\<span class="n">Resources</span>\<span class="n">WPy32</span><span class="o">-</span><span class="mi">3720</span>\<span class="n">python</span><span class="o">-</span><span class="mf">3.7</span><span class="o">.</span><span class="mi">2</span>\<span class="n">python</span><span class="o">.</span><span class="n">exe</span> <span class="o">..</span>\<span class="n">Resources</span>\<span class="n">WPy32</span><span class="o">-</span><span class="mi">3720</span>\<span class="n">python</span><span class="o">-</span><span class="mf">3.7</span><span class="o">.</span><span class="mi">2</span>\<span class="n">OpenRPAOrchestrator</span><span class="o">.</span><span class="n">exe</span>
<span class="o">.</span>\<span class="o">..</span>\<span class="n">Resources</span>\<span class="n">WPy32</span><span class="o">-</span><span class="mi">3720</span>\<span class="n">python</span><span class="o">-</span><span class="mf">3.7</span><span class="o">.</span><span class="mi">2</span>\<span class="n">OpenRPAOrchestrator</span><span class="o">.</span><span class="n">exe</span> <span class="n">orchestratorMain</span><span class="o">.</span><span class="n">py</span>
<span class="n">pause</span> <span class="o">&gt;</span><span class="n">nul</span>
</pre></div>
</div>
</div>
<div class="section" id="use-in-studio-script-n-a">
<h3>Use in studio script (n/a)<a class="headerlink" href="#use-in-studio-script-n-a" title="Ссылка на этот заголовок"></a></h3>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">sys</span>
<span class="n">sys</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="s1">&#39;../../&#39;</span><span class="p">)</span>
<span class="kn">import</span> <span class="nn">GUI</span>
<span class="kn">import</span> <span class="nn">keyboard</span>
<span class="kn">import</span> <span class="nn">subprocess</span>
<span class="kn">import</span> <span class="nn">time</span>
<span class="c1">#Highlight the UI Object in Folder explorer</span>
<span class="n">GUI</span><span class="o">.</span><span class="n">UIOSelector_FocusHighlight</span><span class="p">([{</span><span class="s2">&quot;class_name&quot;</span><span class="p">:</span><span class="s2">&quot;CabinetWClass&quot;</span><span class="p">,</span><span class="s2">&quot;backend&quot;</span><span class="p">:</span><span class="s2">&quot;uia&quot;</span><span class="p">},{</span><span class="s2">&quot;ctrl_index&quot;</span><span class="p">:</span><span class="mi">2</span><span class="p">},{</span><span class="s2">&quot;ctrl_index&quot;</span><span class="p">:</span><span class="mi">0</span><span class="p">},{</span><span class="s2">&quot;ctrl_index&quot;</span><span class="p">:</span><span class="mi">2</span><span class="p">},{</span><span class="s2">&quot;ctrl_index&quot;</span><span class="p">:</span><span class="mi">0</span><span class="p">}])</span>
<span class="c1">#Wait 2 seconds</span>
<span class="n">time</span><span class="o">.</span><span class="n">sleep</span><span class="p">(</span><span class="mi">3</span><span class="p">)</span>
<span class="c1">#Loop: get child element of UI List</span>
<span class="k">for</span> <span class="n">lItem</span> <span class="ow">in</span> <span class="n">GUI</span><span class="o">.</span><span class="n">UIOSelector_Get_UIO</span><span class="p">([{</span><span class="s2">&quot;class_name&quot;</span><span class="p">:</span><span class="s2">&quot;CabinetWClass&quot;</span><span class="p">,</span><span class="s2">&quot;backend&quot;</span><span class="p">:</span><span class="s2">&quot;uia&quot;</span><span class="p">},{</span><span class="s2">&quot;ctrl_index&quot;</span><span class="p">:</span><span class="mi">2</span><span class="p">},{</span><span class="s2">&quot;ctrl_index&quot;</span><span class="p">:</span><span class="mi">0</span><span class="p">},{</span><span class="s2">&quot;ctrl_index&quot;</span><span class="p">:</span><span class="mi">2</span><span class="p">},{</span><span class="s2">&quot;ctrl_index&quot;</span><span class="p">:</span><span class="mi">0</span><span class="p">}])</span><span class="o">.</span><span class="n">children</span><span class="p">():</span>
<span class="nb">print</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">lItem</span><span class="p">))</span>
</pre></div>
</div>
<p>Here you can find the docs and examples of the OpenRPA desktop (GUI) app access.</p>
</div>
</div>
<div class="section" id="desktop-app-ui-access-win32-and-ui-automation-dlls">
<h2>Desktop app UI access (win32 and UI automation dlls)<a class="headerlink" href="#desktop-app-ui-access-win32-and-ui-automation-dlls" title="Ссылка на этот заголовок"></a></h2>
<div class="section" id="definitions">
<h3>Definitions<a class="headerlink" href="#definitions" title="Ссылка на этот заголовок"></a></h3>
<ul class="simple"> <ul class="simple">
<li><p><strong>UIO</strong> - UI Object (class of pywinauto UI object) [pywinauto.base_wrapper]</p></li> <li><p>Запустить из интерпретатора Python x32 (ResourcesWPy32-3720python-3.7.2python.exe)</p></li>
<li><p><strong>UIOSelector</strong> - List of dict (key attributes)</p></li> <li><p>Запустить из интерпретатора Python x64 (ResourcesWPy64-3720python-3.7.2.amd64python.exe)</p></li>
<li><p><strong>PWA</strong> - PyWinAuto</p></li> <li><p>Запустить из под .cmd файла</p></li>
<li><p><strong>PWASpecification</strong> - List of dict (key attributes in pywinauto.find_window notation)</p></li>
<li><p><strong>UIOTree</strong> - Recursive Dict of Dict … (UI Parent -&gt; Child hierarchy)</p></li>
<li><p><strong>UIOInfo</strong> - Dict of UIO attributes</p></li>
<li><p><strong>UIOActivity</strong> - Activity of the UIO (UI object) from the Pywinauto module</p></li>
<li><p><strong>UIOEI</strong> - UI Object info object</p></li>
</ul> </ul>
</div> </div>
<div class="section" id="what-is-uio"> <div class="section" id="python-x32">
<h3>What is UIO?<a class="headerlink" href="#what-is-uio" title="Ссылка на этот заголовок"></a></h3> <h3>Запустить из интерпретатора Python x32<a class="headerlink" href="#python-x32" title="Ссылка на этот заголовок"></a></h3>
<p>UIO is a User Interface Object (pyOpenRPA terminology). For maximum compatibility, this instance is inherited from the object model developed in the [pywinauto library (click to get a list of available class functions)](<a class="reference external" href="https://pywinauto.readthedocs.io/en/latest/code/pywinauto.base_wrapper.html">https://pywinauto.readthedocs.io/en/latest/code/pywinauto.base_wrapper.html</a>).</p> <p>Для запуска срипта из интерпретатора Python x32 необходимо открыть командную строку (cmd), и выполнить следующие команды:</p>
<p>This approach allows us to implement useful functionality that has already been successfully developed in other libraries, and Supplement it with the missing functionality. In our case, the missing functionality is the ability to dynamically access UIO objects using UIO selectors.</p> <div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="n">cd</span> <span class="s2">&quot;Resources\WPy32-3720\python-3.7.2&quot;</span> <span class="c1"># Установить рабочую директорию там, где находится интерпретатор Python</span>
</div> <span class="n">python</span><span class="o">.</span><span class="n">exe</span> <span class="s2">&quot;path to your python script.py&quot;</span> <span class="c1"># Запустить интерпретатор Python с файлом скрипта робота &quot;path to your python script.py&quot;</span>
<div class="section" id="uioselector-structure-example">
<h3>UIOSelector structure &amp; example<a class="headerlink" href="#uioselector-structure-example" title="Ссылка на этот заголовок"></a></h3>
<p>UIOSelector is the list of condition items for the UIO in GUI. Each item has condition attributes for detect applicable UIO. Here is the description of the available condition attributes in item.</p>
<p><strong>Desciption</strong></p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span>[
{
&quot;depth_start&quot; :: [int, start from 1] :: the depth index, where to start check the condition list (default 1),
&quot;depth_end&quot; :: [int, start from 1] :: the depth index, where to stop check the condition list (default 1),
&quot;ctrl_index&quot; || &quot;index&quot; :: [int, starts from 0] :: the index of the UIO in parent UIO child list,
&quot;title&quot; :: [str] :: the condition for the UIO attribute *title*,
&quot;title_re&quot; :: [str] :: regular expression (python ver) for the condition for the UIO attribute *title*,
&quot;rich_text&quot; :: [str] :: the condition for the UIO attribute *rich_text*,
&quot;rich_text_re&quot; :: [str] :: regular expression (python ver) for the condition for the UIO attribute *rich_text*,
&quot;class_name&quot; :: [str] :: the condition for the UIO attribute *class_name*,
&quot;class_name_re&quot; :: [str] :: regular expression (python ver) for the condition for the UIO attribute *class_name*,
&quot;friendly_class_name&quot; :: [str] :: the condition for the UIO attribute *friendly_class_name*,
&quot;friendly_class_name_re&quot; :: [str] :: regular expression (python ver) for the condition for the UIO attribute *friendly_class_name*,
&quot;control_type&quot; :: [str] :: the condition for the UIO attribute *control_type*,
&quot;control_type_re&quot; :: [str] :: regular expression (python ver) for the condition for the UIO attribute *control_type*,
&quot;is_enabled&quot; :: [bool] :: the condition for the UIO attribute *is_enabled*. If UI object is enabled on GUI,
&quot;is_visible&quot; :: [bool] :: the condition for the UIO attribute *is_visible*. If UI object is visible on GUI,
&quot;backend&quot; :: [str, &quot;win32&quot; || &quot;uia&quot;] :: the method of UIO extraction (default &quot;win32&quot;). ATTENTION! Current option can be only for the first item of the UIO selector. For the next items this option will be implemented from the first item.
},
{ ... specification next level UIO }
]
</pre></div>
</div>
<p><strong>The UIO selector example</strong></p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="p">[</span>
<span class="p">{</span><span class="s2">&quot;class_name&quot;</span><span class="p">:</span><span class="s2">&quot;CalcFrame&quot;</span><span class="p">,</span> <span class="s2">&quot;backend&quot;</span><span class="p">:</span><span class="s2">&quot;win32&quot;</span><span class="p">},</span> <span class="c1"># 1-st level UIO specification</span>
<span class="p">{</span><span class="s2">&quot;title&quot;</span><span class="p">:</span><span class="s2">&quot;Hex&quot;</span><span class="p">,</span> <span class="s2">&quot;depth_start&quot;</span><span class="p">:</span><span class="mi">3</span><span class="p">,</span> <span class="s2">&quot;depth_end&quot;</span><span class="p">:</span> <span class="mi">3</span><span class="p">}</span> <span class="c1"># 3-rd level specification (because of attribute depth_start|depth_stop)</span>
<span class="p">]</span>
</pre></div> </pre></div>
</div> </div>
</div> </div>
<div class="section" id="the-uidesktop-module-openrpa-robot-uidesktop-py"> <div class="section" id="python-x64">
<h3>The UIDesktop module (OpenRPA/Robot/UIDesktop.py)<a class="headerlink" href="#the-uidesktop-module-openrpa-robot-uidesktop-py" title="Ссылка на этот заголовок"></a></h3> <h3>Запустить из интерпретатора Python x64<a class="headerlink" href="#python-x64" title="Ссылка на этот заголовок"></a></h3>
<p>The UIDesktop is extension of the pywinauto module which provide access to the desktop apps by the <strong>win32</strong> and <strong>ui automation</strong> dll frameworks (big thx to the Microsoft :) ).</p> <p>Для запуска срипта из интерпретатора Python x64 необходимо открыть командную строку (cmd), и выполнить следующие команды:</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># EXAMPLE 1</span> <div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="n">cd</span> <span class="s2">&quot;Resources\WPy32-3720\python-3.7.2.amd64&quot;</span> <span class="c1"># Установить рабочую директорию там, где находится интерпретатор Python</span>
<span class="kn">from</span> <span class="nn">pyOpenRPA.Robot</span> <span class="kn">import</span> <span class="n">UIDesktop</span> <span class="n">python</span><span class="o">.</span><span class="n">exe</span> <span class="s2">&quot;path to your python script.py&quot;</span> <span class="c1"># Запустить интерпретатор Python с файлом скрипта робота &quot;path to your python script.py&quot;</span>
<span class="n">UIDesktop</span><span class="o">.</span><span class="n">UIOSelector_Get_UIO</span><span class="p">(</span>
<span class="n">inSpecificationList</span><span class="o">=</span><span class="p">[</span>
<span class="p">{</span><span class="s2">&quot;title&quot;</span><span class="p">:</span><span class="s2">&quot;notepad.exe&quot;</span><span class="p">},{</span><span class="s2">&quot;title&quot;</span><span class="p">:</span><span class="s2">&quot;OK&quot;</span><span class="p">}],</span>
<span class="n">inElement</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span>
<span class="n">inFlagRaiseException</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
</pre></div> </pre></div>
</div> </div>
</div> </div>
<div class="section" id="id2"> <div class="section" id="cmd">
<h3>The UIDesktop module (OpenRPA/Robot/UIDesktop.py)<a class="headerlink" href="#id2" title="Ссылка на этот заголовок"></a></h3> <h3>Запустить из под .cmd файла<a class="headerlink" href="#cmd" title="Ссылка на этот заголовок"></a></h3>
<p>The UIDesktop is extension of the pywinauto module which provide access to the desktop apps by the <strong>win32</strong> and <strong>ui automation</strong> dll frameworks (big thx to the Microsoft :) ).</p> <p>Упростить процесс запуска и свести инициализацию робота к одному нажатию можно с помощью средстве command shell и .cmd файла.</p>
<p><a href="#id3"><span class="problematic" id="id4">*</span></a>Naming convention: &lt;InArgument&gt;_&lt;ActivityName&gt;_&lt;OutArgument - if exist&gt;*&lt;br&gt;</p> <p>Для этого достаточно выбрать рабочую директорию робота, там создать текстовый .cmd файл, и прописать в нем следующий код:</p>
</div> <div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="n">cd</span> <span class="o">%~</span><span class="n">dp0</span> <span class="c1"># Установить рабочую директорую там, где находится этот .cmd файл</span>
</div> <span class="n">copy</span> <span class="o">/</span><span class="n">Y</span> <span class="o">..</span>\<span class="n">Resources</span>\<span class="n">WPy32</span><span class="o">-</span><span class="mi">3720</span>\<span class="n">python</span><span class="o">-</span><span class="mf">3.7</span><span class="o">.</span><span class="mi">2</span>\<span class="n">python</span><span class="o">.</span><span class="n">exe</span> <span class="o">..</span>\<span class="n">Resources</span>\<span class="n">WPy32</span><span class="o">-</span><span class="mi">3720</span>\<span class="n">python</span><span class="o">-</span><span class="mf">3.7</span><span class="o">.</span><span class="mi">2</span>\<span class="n">OpenRPAOrchestrator</span><span class="o">.</span><span class="n">exe</span> <span class="c1"># Выполнить компирование python.exe на другое наименование, чтобы изменить наименование процесса робота в диспетчере задач (без этой операции все роботы будут отображаться в диспетчере задач как python.exe)</span>
<div class="section" id="theory-practice-web-app-ui-access-selenium"> <span class="o">.</span>\<span class="o">..</span>\<span class="n">Resources</span>\<span class="n">WPy32</span><span class="o">-</span><span class="mi">3720</span>\<span class="n">python</span><span class="o">-</span><span class="mf">3.7</span><span class="o">.</span><span class="mi">2</span>\<span class="n">OpenRPAOrchestrator</span><span class="o">.</span><span class="n">exe</span> <span class="n">orchestratorMain</span><span class="o">.</span><span class="n">py</span> <span class="c1"># Выполнить инициализацию скрипта робота RPA</span>
<h2>Theory &amp; practice. WEB app UI access (selenium)<a class="headerlink" href="#theory-practice-web-app-ui-access-selenium" title="Ссылка на этот заголовок"></a></h2> <span class="n">pause</span> <span class="o">&gt;</span><span class="n">nul</span> <span class="c1"># Не закрывать окно консоли после завершения работы скрипта робота</span>
<div class="section" id="about">
<h3>About<a class="headerlink" href="#about" title="Ссылка на этот заголовок"></a></h3>
<p>The pyOpenRPA support web app manipulation (by the Selenium lib).
More docs about selenium you can find here (<a class="reference external" href="https://selenium-python.readthedocs.io/">https://selenium-python.readthedocs.io/</a>)</p>
</div>
<div class="section" id="how-to-use">
<h3>How to use<a class="headerlink" href="#how-to-use" title="Ссылка на этот заголовок"></a></h3>
<p>To start use selenium just import selenium modules in the robot tool. Here is the example of the usage.</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">selenium</span> <span class="kn">import</span> <span class="n">webdriver</span>
<span class="kn">from</span> <span class="nn">selenium.webdriver.common.keys</span> <span class="kn">import</span> <span class="n">Keys</span>
<span class="n">driver</span> <span class="o">=</span> <span class="n">webdriver</span><span class="o">.</span><span class="n">Chrome</span><span class="p">()</span>
<span class="n">driver</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;http://www.python.org&quot;</span><span class="p">)</span>
<span class="k">assert</span> <span class="s2">&quot;Python&quot;</span> <span class="ow">in</span> <span class="n">driver</span><span class="o">.</span><span class="n">title</span>
<span class="n">elem</span> <span class="o">=</span> <span class="n">driver</span><span class="o">.</span><span class="n">find_element_by_name</span><span class="p">(</span><span class="s2">&quot;q&quot;</span><span class="p">)</span>
<span class="n">elem</span><span class="o">.</span><span class="n">clear</span><span class="p">()</span>
<span class="n">elem</span><span class="o">.</span><span class="n">send_keys</span><span class="p">(</span><span class="s2">&quot;pycon&quot;</span><span class="p">)</span>
<span class="n">elem</span><span class="o">.</span><span class="n">send_keys</span><span class="p">(</span><span class="n">Keys</span><span class="o">.</span><span class="n">RETURN</span><span class="p">)</span>
<span class="k">assert</span> <span class="s2">&quot;No results found.&quot;</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">driver</span><span class="o">.</span><span class="n">page_source</span>
<span class="n">driver</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
</pre></div> </pre></div>
</div> </div>
</div> </div>
</div> </div>
<div class="section" id="theory-practice-keyboard-mouse-manipulation"> <div class="section" id="id3">
<h2>Theory &amp; practice. Keyboard &amp; mouse manipulation<a class="headerlink" href="#theory-practice-keyboard-mouse-manipulation" title="Ссылка на этот заголовок"></a></h2> <h2>Быстрая навигация<a class="headerlink" href="#id3" title="Ссылка на этот заголовок"></a></h2>
</div> <ul class="simple">
<div class="section" id="theory-practice-screen-capture-image-recognition"> <li><p><a class="reference external" href="https://t.me/pyOpenRPA">Сообщество pyOpenRPA (telegram)</a></p></li>
<h2>Theory &amp; practice. Screen capture &amp; image recognition<a class="headerlink" href="#theory-practice-screen-capture-image-recognition" title="Ссылка на этот заголовок"></a></h2> <li><p><a class="reference external" href="https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24">Сообщество pyOpenRPA (tenchat)</a></p></li>
<div class="section" id="how-to-automate-image-recognition-on-pc"> <li><p><a class="reference external" href="https://vk.com/pyopenrpa">Сообщество pyOpenRPA (вконтакте)</a></p></li>
<h3>How to automate image recognition on PC<a class="headerlink" href="#how-to-automate-image-recognition-on-pc" title="Ссылка на этот заголовок"></a></h3> <li><p><a class="reference external" href="https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf">Презентация pyOpenRPA</a></p></li>
<p>Here you can find any ways you need to use in your business case: <li><p><a class="reference external" href="https://pyopenrpa.ru">Портал pyOpenRPA</a></p></li>
- Find the exact match on the screen with the other image <li><p><a class="reference external" href="https://gitlab.com/UnicodeLabs/OpenRPA">Репозиторий pyOpenRPA</a></p></li>
- Use text recognition module (OCR) </ul>
- Use computer vision (CV) to identify the objects on screen/image/video <p> .. v1.2.12 replace:: v1.2.12</p>
- Use artificial intelligence (AI) to make custom identification/classification/text recognition</p>
<p> .. v1.2.12 replace:: v1.2.12
.. <a href="#id5"><span class="problematic" id="id6">|author|</span></a> replace:: Ivan Maslov &lt;<a class="reference external" href="mailto:ivan&#46;maslov&#37;&#52;&#48;unicodelabs&#46;ru">ivan<span>&#46;</span>maslov<span>&#64;</span>unicodelabs<span>&#46;</span>ru</a>&gt;</p>
<p></p> <p></p>
</div> </div>
</div>
</div> </div>
@ -428,8 +286,8 @@ More docs about selenium you can find here (<a class="reference external" href="
</div> </div>
<footer> <footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="09_Dependencies.html" class="btn btn-neutral float-right" title="9. Зависимости" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a> <a href="../Studio/01_Studio.html" class="btn btn-neutral float-right" title="1. Описание" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="07_image.html" class="btn btn-neutral float-left" title="7. Image" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a> <a href="07_image.html" class="btn btn-neutral float-left" title="7. Функции Image" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a>
</div> </div>
<hr/> <hr/>

@ -1,258 +0,0 @@
<!DOCTYPE html>
<html class="writer-html5" lang="ru" >
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>9. Зависимости &mdash; документация pyOpenRPA v1.2.12 v1.2.12</title>
<link rel="stylesheet" href="../_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<link rel="shortcut icon" href="../_static/favicon.ico"/>
<!--[if lt IE 9]>
<script src="../_static/js/html5shiv.min.js"></script>
<![endif]-->
<script type="text/javascript" id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
<script src="../_static/jquery.js"></script>
<script src="../_static/underscore.js"></script>
<script src="../_static/doctools.js"></script>
<script src="../_static/translations.js"></script>
<script type="text/javascript" src="../_static/js/theme.js"></script>
<link rel="index" title="Алфавитный указатель" href="../genindex.html" />
<link rel="search" title="Поиск" href="../search.html" />
<link rel="next" title="1. Описание" href="../Studio/01_Studio.html" />
<link rel="prev" title="8. Как использовать?" href="08_HowToUse.html" />
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" >
<a href="../index.html" class="icon icon-home"> pyOpenRPA v1.2.12
</a>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
<input type="text" name="q" placeholder="Поиск в документации" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<p class="caption"><span class="caption-text">ОБЩЕЕ</span></p>
<ul>
<li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li>
<li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li>
<li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Права &amp; Контакты</a></li>
</ul>
<p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="01_Robot.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="02_Defs.html">2. Функции</a></li>
<li class="toctree-l1"><a class="reference internal" href="02_uidesktop.html">2. UIDesktop</a></li>
<li class="toctree-l1"><a class="reference internal" href="03_uiweb.html">3. UIWeb</a></li>
<li class="toctree-l1"><a class="reference internal" href="04_keyboard.html">4. Keyboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="05_clipboard.html">5. Clipboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="06_mouse.html">6. Mouse</a></li>
<li class="toctree-l1"><a class="reference internal" href="07_image.html">7. Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="08_HowToUse.html">8. Как использовать?</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">9. Зависимости</a></li>
</ul>
<p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../Studio/01_Studio.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Studio/02_HowToUse.html">2. Как использовать?</a></li>
</ul>
<p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Description</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Defs</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. gSettings Template</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. How to use</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. UAC - User Access Control</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/06_Defs%20Managers.html">6. Defs Managers</a></li>
</ul>
<p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Defs</a></li>
</ul>
<p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Defs StopSafe</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="../index.html">pyOpenRPA v1.2.12</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="../index.html" class="icon icon-home"></a> &raquo;</li>
<li>9. Зависимости</li>
<li class="wy-breadcrumbs-aside">
<a href="../_sources/Robot/09_Dependencies.rst.txt" rel="nofollow"> Просмотреть исходный код страницы</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="id1">
<h1>9. Зависимости<a class="headerlink" href="#id1" title="Ссылка на этот заголовок"></a></h1>
<p>Python 3 x32 [psutil, pywinauto, wmi, PIL, keyboard, pyautogui, win32api (pywin32), selenium, openCV, tesseract, requests, lxml, PyMuPDF]
Python 3 x64 [psutil, pywinauto, wmi, PIL, keyboard, pyautogui, win32api (pywin32), selenium, openCV, tesseract, requests, lxml, PyMuPDF]
pywinauto (Windows GUI automation)
Semantic UI CSS framework
JsRender by <a class="reference external" href="https://www.jsviews.com">https://www.jsviews.com</a> (switch to Handlebars)
Handlebars</p>
<p> .. v1.2.12 replace:: v1.2.12
.. <a href="#id2"><span class="problematic" id="id3">|author|</span></a> replace:: Ivan Maslov &lt;<a class="reference external" href="mailto:ivan&#46;maslov&#37;&#52;&#48;unicodelabs&#46;ru">ivan<span>&#46;</span>maslov<span>&#64;</span>unicodelabs<span>&#46;</span>ru</a>&gt;</p>
<p></p>
</div>
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="../Studio/01_Studio.html" class="btn btn-neutral float-right" title="1. Описание" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="08_HowToUse.html" class="btn btn-neutral float-left" title="8. Как использовать?" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a>
</div>
<hr/>
<div role="contentinfo">
<p>
&#169; Copyright 2022, ООО &#34;ОПЕН РПА&#34;.
</p>
</div>
Собрано при помощи <a href="https://www.sphinx-doc.org/">Sphinx</a> с использованием
<a href="https://github.com/readthedocs/sphinx_rtd_theme">темы,</a>
предоставленной <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>

@ -42,7 +42,7 @@
<link rel="index" title="Алфавитный указатель" href="../genindex.html" /> <link rel="index" title="Алфавитный указатель" href="../genindex.html" />
<link rel="search" title="Поиск" href="../search.html" /> <link rel="search" title="Поиск" href="../search.html" />
<link rel="next" title="2. Как использовать?" href="02_HowToUse.html" /> <link rel="next" title="2. Как использовать?" href="02_HowToUse.html" />
<link rel="prev" title="9. Зависимости" href="../Robot/09_Dependencies.html" /> <link rel="prev" title="8. Как использовать?" href="../Robot/08_HowToUse.html" />
</head> </head>
<body class="wy-body-for-nav"> <body class="wy-body-for-nav">
@ -91,42 +91,43 @@
<ul> <ul>
<li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li> <li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li>
<li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li> <li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li>
<li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Права &amp; Контакты</a></li> <li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Лицензия &amp; Контакты</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Robot/01_Robot.html">1. Описание</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/01_Robot.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/02_Defs.html">2. Функции</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/02_uidesktop.html">2. Функции UIDesktop</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/02_uidesktop.html">2. UIDesktop</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/03_uiweb.html">3. Функции UIWeb</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/03_uiweb.html">3. UIWeb</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/04_keyboard.html">4. Функции Keyboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/04_keyboard.html">4. Keyboard</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/05_clipboard.html">5. Функции Clipboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/05_clipboard.html">5. Clipboard</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/06_mouse.html">6. Функции Mouse</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/06_mouse.html">6. Mouse</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/07_image.html">7. Функции Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/07_image.html">7. Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/08_HowToUse.html">8. Как использовать?</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/08_HowToUse.html">8. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/09_Dependencies.html">9. Зависимости</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p>
<ul class="current"> <ul class="current">
<li class="toctree-l1 current"><a class="current reference internal" href="#">1. Описание</a></li> <li class="toctree-l1 current"><a class="current reference internal" href="#">1. Описание</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#id2">Общее</a></li>
<li class="toctree-l2"><a class="reference internal" href="#id3">Быстрая навигация</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="02_HowToUse.html">2. Как использовать?</a></li> <li class="toctree-l1"><a class="reference internal" href="02_HowToUse.html">2. Как использовать?</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Description</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Функции</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. gSettings Template</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. Настройки GSettings (шаблон)</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. How to use</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. UAC - User Access Control</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. Права доступа пользователей UAC</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/06_Defs%20Managers.html">6. Defs Managers</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Функции</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p> <p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Defs StopSafe</a></li> <li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Функции StopSafe</a></li>
</ul> </ul>
@ -196,10 +197,28 @@
<div class="section" id="module-studio-description"> <div class="section" id="module-studio-description">
<span id="id1"></span><h1>1. Описание<a class="headerlink" href="#module-studio-description" title="Ссылка на этот заголовок"></a></h1> <span id="id1"></span><h1>1. Описание<a class="headerlink" href="#module-studio-description" title="Ссылка на этот заголовок"></a></h1>
<p>pyOpenRPA Studio is the executable process.</p> <div class="section" id="id2">
<p> .. v1.2.12 replace:: v1.2.12 <h2>Общее<a class="headerlink" href="#id2" title="Ссылка на этот заголовок"></a></h2>
.. <a href="#id2"><span class="problematic" id="id3">|author|</span></a> replace:: Ivan Maslov &lt;<a class="reference external" href="mailto:ivan&#46;maslov&#37;&#52;&#48;unicodelabs&#46;ru">ivan<span>&#46;</span>maslov<span>&#64;</span>unicodelabs<span>&#46;</span>ru</a>&gt;</p> <p>Модуль студии обеспечивает всю необходимую функциональность взаимодействия с UI объектами различных приложений, запущенных в сессии.</p>
<p>В разделе <a class="reference internal" href="02_HowToUse.html#module-studio-how-to-use"><span class="std std-ref">2. Как использовать?</span></a> вы найдете практическое руководство по работе с пользовательским интерфейсом студии, которая отрывается в веб браузере.</p>
<p>Дорогие коллеги!</p>
<p>Мы знаем, что с pyOpenRPA вы сможете существенно улучшить качество вашего бизнеса. Платформа роботизации pyOpenRPA - это разработка, которая дает возможность делать виртуальных сотрудников (программных роботов RPA) выгодными, начиная от эффекта всего в <strong>10 тыс. руб.</strong> И управлять ими будете только Вы!</p>
<p>Если у вас останутся вопросы, то вы всегда можете обратиться в центр поддержки клиентов pyOpenRPA. Контакты: <a class="reference internal" href="../03_Copyrights_Contacts.html#copyrights-contacts"><span class="std std-ref">2. Лицензия &amp; Контакты</span></a></p>
<p>pyOpenRPA - роботы помогут!</p>
</div>
<div class="section" id="id3">
<h2>Быстрая навигация<a class="headerlink" href="#id3" title="Ссылка на этот заголовок"></a></h2>
<ul class="simple">
<li><p><a class="reference external" href="https://t.me/pyOpenRPA">Сообщество pyOpenRPA (telegram)</a></p></li>
<li><p><a class="reference external" href="https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24">Сообщество pyOpenRPA (tenchat)</a></p></li>
<li><p><a class="reference external" href="https://vk.com/pyopenrpa">Сообщество pyOpenRPA (вконтакте)</a></p></li>
<li><p><a class="reference external" href="https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf">Презентация pyOpenRPA</a></p></li>
<li><p><a class="reference external" href="https://pyopenrpa.ru">Портал pyOpenRPA</a></p></li>
<li><p><a class="reference external" href="https://gitlab.com/UnicodeLabs/OpenRPA">Репозиторий pyOpenRPA</a></p></li>
</ul>
<p> .. v1.2.12 replace:: v1.2.12</p>
<p></p> <p></p>
</div>
</div> </div>
@ -209,7 +228,7 @@
<footer> <footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="02_HowToUse.html" class="btn btn-neutral float-right" title="2. Как использовать?" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a> <a href="02_HowToUse.html" class="btn btn-neutral float-right" title="2. Как использовать?" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="../Robot/09_Dependencies.html" class="btn btn-neutral float-left" title="9. Зависимости" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a> <a href="../Robot/08_HowToUse.html" class="btn btn-neutral float-left" title="8. Как использовать?" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a>
</div> </div>
<hr/> <hr/>

@ -41,7 +41,7 @@
<link rel="index" title="Алфавитный указатель" href="../genindex.html" /> <link rel="index" title="Алфавитный указатель" href="../genindex.html" />
<link rel="search" title="Поиск" href="../search.html" /> <link rel="search" title="Поиск" href="../search.html" />
<link rel="next" title="1. Description" href="../Orchestrator/01_Orchestrator.html" /> <link rel="next" title="1. Описание" href="../Orchestrator/01_Orchestrator.html" />
<link rel="prev" title="1. Описание" href="01_Studio.html" /> <link rel="prev" title="1. Описание" href="01_Studio.html" />
</head> </head>
@ -91,65 +91,65 @@
<ul> <ul>
<li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li> <li class="toctree-l1"><a class="reference external" href="https://pyopenrpa.ru/wiki/guide/index">Выбрать версию</a></li>
<li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li> <li class="toctree-l1"><a class="reference internal" href="../01_HowToInstall.html">1. Первый запуск</a></li>
<li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Права &amp; Контакты</a></li> <li class="toctree-l1"><a class="reference internal" href="../03_Copyrights_Contacts.html">2. Лицензия &amp; Контакты</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ РОБОТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Robot/01_Robot.html">1. Описание</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/01_Robot.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/02_Defs.html">2. Функции</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/02_uidesktop.html">2. Функции UIDesktop</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/02_uidesktop.html">2. UIDesktop</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/03_uiweb.html">3. Функции UIWeb</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/03_uiweb.html">3. UIWeb</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/04_keyboard.html">4. Функции Keyboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/04_keyboard.html">4. Keyboard</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/05_clipboard.html">5. Функции Clipboard</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/05_clipboard.html">5. Clipboard</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/06_mouse.html">6. Функции Mouse</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/06_mouse.html">6. Mouse</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/07_image.html">7. Функции Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/07_image.html">7. Image</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/08_HowToUse.html">8. Как использовать?</a></li> <li class="toctree-l1"><a class="reference internal" href="../Robot/08_HowToUse.html">8. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Robot/09_Dependencies.html">9. Зависимости</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ СТУДИЯ</span></p>
<ul class="current"> <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="01_Studio.html">1. Описание</a></li> <li class="toctree-l1"><a class="reference internal" href="01_Studio.html">1. Описание</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">2. Как использовать?</a><ul> <li class="toctree-l1 current"><a class="current reference internal" href="#">2. Как использовать?</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#content">Content</a></li> <li class="toctree-l2"><a class="reference internal" href="#general">Общее</a></li>
<li class="toctree-l2"><a class="reference internal" href="#how-to-run">How to run</a></li> <li class="toctree-l2"><a class="reference internal" href="#how-to-run">Как запустить?</a></li>
<li class="toctree-l2"><a class="reference internal" href="#ui-description">UI Description</a><ul> <li class="toctree-l2"><a class="reference internal" href="#ui">Описание UI студии</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#gui-screenshot-1">GUI Screenshot 1</a></li> <li class="toctree-l3"><a class="reference internal" href="#id4">Скриншот 1</a></li>
<li class="toctree-l3"><a class="reference internal" href="#gui-screenshot-2">GUI Screenshot 2</a></li> <li class="toctree-l3"><a class="reference internal" href="#id5">Скриншот 2</a></li>
</ul> </ul>
</li> </li>
<li class="toctree-l2"><a class="reference internal" href="#how-to-extract-ui-tree">How to extract UI tree</a><ul> <li class="toctree-l2"><a class="reference internal" href="#how-to-extract-ui-tree">Извлечь UI дерево</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#action-click-the-button-expand">Action: Click the button «Expand»</a></li> <li class="toctree-l3"><a class="reference internal" href="#expand">Действие: Нажать по кнопке «Expand»</a></li>
<li class="toctree-l3"><a class="reference internal" href="#result">Result</a></li> <li class="toctree-l3"><a class="reference internal" href="#id7">Итог</a></li>
<li class="toctree-l3"><a class="reference internal" href="#how-to-search-ui-object-by-mouse-hover">How to search UI object by mouse hover</a></li>
<li class="toctree-l3"><a class="reference internal" href="#action-click-the-button-mouse-search">Action: Click the button «Mouse search»</a></li>
<li class="toctree-l3"><a class="reference internal" href="#action-turn-mouse-on-the-ui-object-you-are-interested-and-hold-the-ctrl-key-for-3-seconds">Action: Turn mouse on the UI object you are interested and hold the «Ctrl» key for 3 seconds</a></li>
<li class="toctree-l3"><a class="reference internal" href="#result-the-interested-ui-object-will-be-shown-in-ui-tree-viewer">Result: The interested UI object will be shown in <code class="docutils literal notranslate"><span class="pre">UI</span> <span class="pre">tree</span> <span class="pre">viewer</span></code></a></li>
</ul> </ul>
</li> </li>
<li class="toctree-l2"><a class="reference internal" href="#how-to-extract-ui-object-properties">How to extract UI object properties</a><ul> <li class="toctree-l2"><a class="reference internal" href="#how-to-search-ui-object-by-mouse-hover">Поиск UI объекта по наведению мыши</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#action-choose-the-ui-object-you-are-interested-and-click-it">Action: Choose the UI object you are interested and click it</a></li> <li class="toctree-l3"><a class="reference internal" href="#mouse-search">Действие: Нажать кнопку «Mouse search»</a></li>
<li class="toctree-l3"><a class="reference internal" href="#result-the-ui-object-property-list-will-be-shown-in-selected-ui-object-property-list">Result: The UI object property list will be shown in <code class="docutils literal notranslate"><span class="pre">Selected</span> <span class="pre">UI</span> <span class="pre">object</span> <span class="pre">property</span> <span class="pre">list</span></code></a></li> <li class="toctree-l3"><a class="reference internal" href="#ui-ctrl-3">Действие: Навести курсор мыши на UI объект, который интересует и зажать клавишу «Ctrl» на 3 секунды</a></li>
<li class="toctree-l3"><a class="reference internal" href="#ui-ui-tree-viewer">Итог: Интересующий UI объект будет отображен в <code class="docutils literal notranslate"><span class="pre">UI</span> <span class="pre">tree</span> <span class="pre">viewer</span></code></a></li>
</ul> </ul>
</li> </li>
<li class="toctree-l2"><a class="reference internal" href="#how-to-extract-ui-object-properties">Извлечь свойства UI объекта</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#choose-the-ui-object-you-are-interested-and-click-it">Действие: Choose the UI object you are interested and click it</a></li>
<li class="toctree-l3"><a class="reference internal" href="#ui-selected-ui-object-property-list">Итог: Свойства UI объекта будут отображены в <code class="docutils literal notranslate"><span class="pre">Selected</span> <span class="pre">UI</span> <span class="pre">object</span> <span class="pre">property</span> <span class="pre">list</span></code></a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#id10">Быстрая навигация</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ ОРКЕСТРАТОР</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Description</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/01_Orchestrator.html">1. Описание</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/02_Defs.html">2. Функции</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. gSettings Template</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/03_gSettingsTemplate.html">3. Настройки GSettings (шаблон)</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. How to use</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/04_HowToUse.html">4. Как использовать?</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. UAC - User Access Control</a></li> <li class="toctree-l1"><a class="reference internal" href="../Orchestrator/05_UAC.html">5. Права доступа пользователей UAC</a></li>
<li class="toctree-l1"><a class="reference internal" href="../Orchestrator/06_Defs%20Managers.html">6. Defs Managers</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p> <p class="caption"><span class="caption-text">МОДУЛЬ АГЕНТ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Defs</a></li> <li class="toctree-l1"><a class="reference internal" href="../Agent/02_Defs.html">2. Функции</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p> <p class="caption"><span class="caption-text">ИНСТРУМЕНТЫ</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Defs StopSafe</a></li> <li class="toctree-l1"><a class="reference internal" href="../Tools/02_Defs.html">2. Функции StopSafe</a></li>
</ul> </ul>
@ -217,109 +217,105 @@
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article"> <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody"> <div itemprop="articleBody">
<div class="section" id="id1"> <div class="section" id="module-studio-how-to-use">
<h1>2. Как использовать?<a class="headerlink" href="#id1" title="Ссылка на этот заголовок"></a></h1> <span id="id1"></span><h1>2. Как использовать?<a class="headerlink" href="#module-studio-how-to-use" title="Ссылка на этот заголовок"></a></h1>
<div class="section" id="content"> <div class="section" id="general">
<h2>Content<a class="headerlink" href="#content" title="Ссылка на этот заголовок"></a></h2> <span id="id2"></span><h2>Общее<a class="headerlink" href="#general" title="Ссылка на этот заголовок"></a></h2>
<ul class="simple"> <ul class="simple">
<li><p><a class="reference external" href="#how-to-run">How to run</a></p></li> <li><p><a class="reference external" href="#how-to-run">Как запустить?</a></p></li>
<li><p><a class="reference external" href="#ui-description">UI Description</a></p></li> <li><p><a class="reference external" href="#ui-description">Описание UI студии</a></p></li>
<li><p><a class="reference external" href="#how-to-extract-ui-tree">How to extract UI tree</a></p></li> <li><p><a class="reference external" href="#how-to-extract-ui-tree">Извлечь UI дерево</a></p></li>
<li><p><a class="reference external" href="#how-to-search-ui-object-by-mouse-hover">How to search UI object by mouse <li><p><a class="reference external" href="#how-to-search-ui-object-by-mouse-hover">Поиск UI объекта по наведению мыши</a></p></li>
hover</a></p></li> <li><p><a class="reference external" href="#how-to-extract-ui-object-properties">Извлечь свойства UI объекта</a></p></li>
<li><p><a class="reference external" href="#how-to-extract-ui-object-properties">How to extract UI object
properties</a></p></li>
</ul> </ul>
</div> </div>
<div class="section" id="how-to-run"> <div class="section" id="how-to-run">
<h2>How to run<a class="headerlink" href="#how-to-run" title="Ссылка на этот заголовок"></a></h2> <span id="id3"></span><h2>Как запустить?<a class="headerlink" href="#how-to-run" title="Ссылка на этот заголовок"></a></h2>
<ul class="simple"> <ul class="simple">
<li><p>For OS x32</p></li> <li><p>Запустить файл StudiopyOpenRPA.Studio_x64.cmd</p></li>
<li><p>Run (double click): OpenRPA_32.cmd (for OS x32)</p></li> <li><p>Ожидать текст в окне консоли: «running server». Браузер, установленный по умолчанию откроется автоматически</p></li>
<li><p>For OS x64</p></li> <li><p><strong>!ВНИМАНИЕ!</strong> Студия поддерживает все версии браузеров, кроме Internet Explorer.</p></li>
<li><p>Run (double click): OpenRPA_64.cmd (for OS x64)</p></li>
<li><p>Wait text «running server» in console. Default browser will be open
automatically</p></li>
<li><p><strong>Attention!</strong> The studio tool does not support the Internet explorer
(any version) for GUI rendering (lol)</p></li>
</ul> </ul>
<img alt="504b98f76747f63900a2943532a946bb.png" src="img/504b98f76747f63900a2943532a946bb.png" /> <img alt="504b98f76747f63900a2943532a946bb.png" src="img/504b98f76747f63900a2943532a946bb.png" />
</div> </div>
<div class="section" id="ui-description"> <div class="section" id="ui">
<h2>UI Description<a class="headerlink" href="#ui-description" title="Ссылка на этот заголовок"></a></h2> <span id="ui-description"></span><h2>Описание UI студии<a class="headerlink" href="#ui" title="Ссылка на этот заголовок"></a></h2>
<p><strong>The studio tool GUI contains of:</strong></p> <p><strong>Интерфейс (UI) студии состоит из следующих компонентов:</strong></p>
<ol class="arabic simple"> <ol class="arabic simple">
<li><p>UI tree viewer</p></li> <li><p>Обозреватель UI дерева</p></li>
<li><p>Selected UI object hierarchy list</p></li> <li><p>Обозреватель иерархии выбранного UI объекта</p></li>
<li><p>Selected UI object property list</p></li> <li><p>Обозреватель свойств выбранного уровня UI объекта</p></li>
<li><p>UIO selector editor</p></li> <li><p>Редактор UIO селектора</p></li>
<li><p>UIO action panel</p></li> <li><p>Панель активностей над UIO объектом</p></li>
<li><p>Another Python activity panel</p></li> <li><p>Панель других Python активностей</p></li>
<li><p>Action/activity list</p></li> <li><p>Список активностей</p></li>
</ol> </ol>
<p><em>Look it on the GUI screenshots are listed below</em></p> <p><em>Ниже представлены скриншоты студии</em></p>
<div class="section" id="gui-screenshot-1"> <div class="section" id="id4">
<h3>GUI Screenshot 1<a class="headerlink" href="#gui-screenshot-1" title="Ссылка на этот заголовок"></a></h3> <h3>Скриншот 1<a class="headerlink" href="#id4" title="Ссылка на этот заголовок"></a></h3>
<img alt="504b98f76747f63900a2943532a946bb.png" src="img/d3d6ad14a7e50843bd89d2b14a092fee.png" /> <img alt="504b98f76747f63900a2943532a946bb.png" src="img/d3d6ad14a7e50843bd89d2b14a092fee.png" />
</div> </div>
<div class="section" id="gui-screenshot-2"> <div class="section" id="id5">
<h3>GUI Screenshot 2<a class="headerlink" href="#gui-screenshot-2" title="Ссылка на этот заголовок"></a></h3> <h3>Скриншот 2<a class="headerlink" href="#id5" title="Ссылка на этот заголовок"></a></h3>
<img alt="65b7d51c0a5b21e6b27dc23d4062d3ca.png" src="img/65b7d51c0a5b21e6b27dc23d4062d3ca.png" /> <img alt="65b7d51c0a5b21e6b27dc23d4062d3ca.png" src="img/65b7d51c0a5b21e6b27dc23d4062d3ca.png" />
</div> </div>
</div> </div>
<div class="section" id="how-to-extract-ui-tree"> <div class="section" id="how-to-extract-ui-tree">
<h2>How to extract UI tree<a class="headerlink" href="#how-to-extract-ui-tree" title="Ссылка на этот заголовок"></a></h2> <span id="id6"></span><h2>Извлечь UI дерево<a class="headerlink" href="#how-to-extract-ui-tree" title="Ссылка на этот заголовок"></a></h2>
<p>In order to extract the UI tree do the following: in <code class="docutils literal notranslate"><span class="pre">UI</span> <span class="pre">tree</span> <span class="pre">viewer</span></code> <p>Чтобы извлечь дерево пользовательского интерфейса выполните следующие действия: в <code class="docutils literal notranslate"><span class="pre">UI</span> <span class="pre">Tree</span> <span class="pre">viewer</span></code> выбрать интересующий UI объект и нажать кнопку <code class="docutils literal notranslate"><span class="pre">Expand</span></code>.</p>
choose the object you are interested and click the button «Expand». ##</p> <div class="section" id="expand">
<div class="section" id="action-click-the-button-expand"> <h3>Действие: Нажать по кнопке «Expand»<a class="headerlink" href="#expand" title="Ссылка на этот заголовок"></a></h3>
<h3>Action: Click the button «Expand»<a class="headerlink" href="#action-click-the-button-expand" title="Ссылка на этот заголовок"></a></h3>
<img alt="6effc376ff6ea928840674bd744caced.png" src="img/6effc376ff6ea928840674bd744caced.png" /> <img alt="6effc376ff6ea928840674bd744caced.png" src="img/6effc376ff6ea928840674bd744caced.png" />
</div> </div>
<div class="section" id="result"> <div class="section" id="id7">
<h3>Result<a class="headerlink" href="#result" title="Ссылка на этот заголовок"></a></h3> <h3>Итог<a class="headerlink" href="#id7" title="Ссылка на этот заголовок"></a></h3>
<img alt="18b9ab36126c8c32168bf5bbb9330701.png" src="img/18b9ab36126c8c32168bf5bbb9330701.png" /> <img alt="18b9ab36126c8c32168bf5bbb9330701.png" src="img/18b9ab36126c8c32168bf5bbb9330701.png" />
<hr class="docutils" />
</div> </div>
<div class="section" id="how-to-search-ui-object-by-mouse-hover">
<h3>How to search UI object by mouse hover<a class="headerlink" href="#how-to-search-ui-object-by-mouse-hover" title="Ссылка на этот заголовок"></a></h3>
<p>In order to search UI object do the
following: in <code class="docutils literal notranslate"><span class="pre">UI</span> <span class="pre">tree</span> <span class="pre">viewer</span></code> choose the parent object, where you are
want to search UI object, and click the button «Mouse search». The mouse
search mode will start. Turn mouse on the UI object you are interested
and wait when the studio will highlight the UI object. After the
hightlight hold the «Ctrl» key and wait 3 seconds. The interested UI
object will be shown in <code class="docutils literal notranslate"><span class="pre">UI</span> <span class="pre">tree</span> <span class="pre">viewer</span></code>.</p>
</div> </div>
<div class="section" id="action-click-the-button-mouse-search"> <div class="section" id="how-to-search-ui-object-by-mouse-hover">
<h3>Action: Click the button «Mouse search»<a class="headerlink" href="#action-click-the-button-mouse-search" title="Ссылка на этот заголовок"></a></h3> <span id="id8"></span><h2>Поиск UI объекта по наведению мыши<a class="headerlink" href="#how-to-search-ui-object-by-mouse-hover" title="Ссылка на этот заголовок"></a></h2>
<p>Чтобы выполнить поиск UI объекта пользовательского интерфейса, необходимо в <code class="docutils literal notranslate"><span class="pre">UI</span> <span class="pre">tree</span> <span class="pre">viewer</span></code> выбрать родительский UI объект, в котором вы хотите выполнить поиск, и нажать кнопку <code class="docutils literal notranslate"><span class="pre">Mouse</span> <span class="pre">search</span></code>.</p>
<p>Будет активирован режим поиск UI объекта по курсору мыши. Наведите курсор мыши на интересующий вас объект пользовательского интерфейса и дождитесь, когда студия выделит объект пользовательского интерфейса. После выделения цветов удерживайте клавишу «Ctrl» и подождите 3 секунды. Интересующий UI объект будет показан в <code class="docutils literal notranslate"><span class="pre">UI</span> <span class="pre">tree</span> <span class="pre">viewer</span></code>.</p>
<div class="section" id="mouse-search">
<h3>Действие: Нажать кнопку «Mouse search»<a class="headerlink" href="#mouse-search" title="Ссылка на этот заголовок"></a></h3>
<img alt="84d7e4de0c840631f87cf7b325b53ad8.png" src="img/84d7e4de0c840631f87cf7b325b53ad8.png" /> <img alt="84d7e4de0c840631f87cf7b325b53ad8.png" src="img/84d7e4de0c840631f87cf7b325b53ad8.png" />
</div> </div>
<div class="section" id="action-turn-mouse-on-the-ui-object-you-are-interested-and-hold-the-ctrl-key-for-3-seconds"> <div class="section" id="ui-ctrl-3">
<h3>Action: Turn mouse on the UI object you are interested and hold the «Ctrl» key for 3 seconds<a class="headerlink" href="#action-turn-mouse-on-the-ui-object-you-are-interested-and-hold-the-ctrl-key-for-3-seconds" title="Ссылка на этот заголовок"></a></h3> <h3>Действие: Навести курсор мыши на UI объект, который интересует и зажать клавишу «Ctrl» на 3 секунды<a class="headerlink" href="#ui-ctrl-3" title="Ссылка на этот заголовок"></a></h3>
<img alt="b7c38d622bf5b7afa5b26d1686d7302a.png" src="img/b7c38d622bf5b7afa5b26d1686d7302a.png" /> <img alt="b7c38d622bf5b7afa5b26d1686d7302a.png" src="img/b7c38d622bf5b7afa5b26d1686d7302a.png" />
</div> </div>
<div class="section" id="result-the-interested-ui-object-will-be-shown-in-ui-tree-viewer"> <div class="section" id="ui-ui-tree-viewer">
<h3>Result: The interested UI object will be shown in <code class="docutils literal notranslate"><span class="pre">UI</span> <span class="pre">tree</span> <span class="pre">viewer</span></code><a class="headerlink" href="#result-the-interested-ui-object-will-be-shown-in-ui-tree-viewer" title="Ссылка на этот заголовок"></a></h3> <h3>Итог: Интересующий UI объект будет отображен в <code class="docutils literal notranslate"><span class="pre">UI</span> <span class="pre">tree</span> <span class="pre">viewer</span></code><a class="headerlink" href="#ui-ui-tree-viewer" title="Ссылка на этот заголовок"></a></h3>
<img alt="629bbf4db2c01b9c640194230949fcd2.png" src="img/629bbf4db2c01b9c640194230949fcd2.png" /> <img alt="629bbf4db2c01b9c640194230949fcd2.png" src="img/629bbf4db2c01b9c640194230949fcd2.png" />
</div> </div>
</div> </div>
<div class="section" id="how-to-extract-ui-object-properties"> <div class="section" id="how-to-extract-ui-object-properties">
<h2>How to extract UI object properties<a class="headerlink" href="#how-to-extract-ui-object-properties" title="Ссылка на этот заголовок"></a></h2> <span id="id9"></span><h2>Извлечь свойства UI объекта<a class="headerlink" href="#how-to-extract-ui-object-properties" title="Ссылка на этот заголовок"></a></h2>
<p>In order to extract UI object properties do the following: in <p>Чтобы извлечь свойства UI объекта, необходимо в
<code class="docutils literal notranslate"><span class="pre">Selected</span> <span class="pre">UI</span> <span class="pre">object</span> <span class="pre">hierarchy</span> <span class="pre">list</span></code> choose the UI object you are <code class="docutils literal notranslate"><span class="pre">Selected</span> <span class="pre">UI</span> <span class="pre">object</span> <span class="pre">hierarchy</span> <span class="pre">list</span></code> выбрать интересующий UI объект и щелкнуть по нему. Список свойств UI объекта будет отображен в <code class="docutils literal notranslate"><span class="pre">Selected</span> <span class="pre">UI</span> <span class="pre">object</span> <span class="pre">property</span> <span class="pre">list</span></code></p>
interested and click it. The UI object property list will be shown in <div class="section" id="choose-the-ui-object-you-are-interested-and-click-it">
<code class="docutils literal notranslate"><span class="pre">Selected</span> <span class="pre">UI</span> <span class="pre">object</span> <span class="pre">property</span> <span class="pre">list</span></code></p> <h3>Действие: Choose the UI object you are interested and click it<a class="headerlink" href="#choose-the-ui-object-you-are-interested-and-click-it" title="Ссылка на этот заголовок"></a></h3>
<div class="section" id="action-choose-the-ui-object-you-are-interested-and-click-it">
<h3>Action: Choose the UI object you are interested and click it<a class="headerlink" href="#action-choose-the-ui-object-you-are-interested-and-click-it" title="Ссылка на этот заголовок"></a></h3>
<img alt="2c27be5bdde20b5d062cbb40e74eaec5.png" src="img/2c27be5bdde20b5d062cbb40e74eaec5.png" /> <img alt="2c27be5bdde20b5d062cbb40e74eaec5.png" src="img/2c27be5bdde20b5d062cbb40e74eaec5.png" />
</div> </div>
<div class="section" id="result-the-ui-object-property-list-will-be-shown-in-selected-ui-object-property-list"> <div class="section" id="ui-selected-ui-object-property-list">
<h3>Result: The UI object property list will be shown in <code class="docutils literal notranslate"><span class="pre">Selected</span> <span class="pre">UI</span> <span class="pre">object</span> <span class="pre">property</span> <span class="pre">list</span></code><a class="headerlink" href="#result-the-ui-object-property-list-will-be-shown-in-selected-ui-object-property-list" title="Ссылка на этот заголовок"></a></h3> <h3>Итог: Свойства UI объекта будут отображены в <code class="docutils literal notranslate"><span class="pre">Selected</span> <span class="pre">UI</span> <span class="pre">object</span> <span class="pre">property</span> <span class="pre">list</span></code><a class="headerlink" href="#ui-selected-ui-object-property-list" title="Ссылка на этот заголовок"></a></h3>
<img alt="f235ae29099a713e0246cd574ac3a17c.png" src="img/f235ae29099a713e0246cd574ac3a17c.png" /> <img alt="f235ae29099a713e0246cd574ac3a17c.png" src="img/f235ae29099a713e0246cd574ac3a17c.png" />
<p> .. v1.2.12 replace:: v1.2.12
.. <a href="#id2"><span class="problematic" id="id3">|author|</span></a> replace:: Ivan Maslov &lt;<a class="reference external" href="mailto:ivan&#46;maslov&#37;&#52;&#48;unicodelabs&#46;ru">ivan<span>&#46;</span>maslov<span>&#64;</span>unicodelabs<span>&#46;</span>ru</a>&gt;</p>
<p></p>
</div> </div>
</div> </div>
<div class="section" id="id10">
<h2>Быстрая навигация<a class="headerlink" href="#id10" title="Ссылка на этот заголовок"></a></h2>
<ul class="simple">
<li><p><a class="reference external" href="https://t.me/pyOpenRPA">Сообщество pyOpenRPA (telegram)</a></p></li>
<li><p><a class="reference external" href="https://tenchat.ru/iMaslov?utm_source=19f2a84f-3268-437f-950c-d987ae42af24">Сообщество pyOpenRPA (tenchat)</a></p></li>
<li><p><a class="reference external" href="https://vk.com/pyopenrpa">Сообщество pyOpenRPA (вконтакте)</a></p></li>
<li><p><a class="reference external" href="https://pyopenrpa.ru/Index/pyOpenRPA_product_service.pdf">Презентация pyOpenRPA</a></p></li>
<li><p><a class="reference external" href="https://pyopenrpa.ru">Портал pyOpenRPA</a></p></li>
<li><p><a class="reference external" href="https://gitlab.com/UnicodeLabs/OpenRPA">Репозиторий pyOpenRPA</a></p></li>
</ul>
<p> .. v1.2.12 replace:: v1.2.12</p>
<p></p>
</div>
</div> </div>
@ -328,7 +324,7 @@ interested and click it. The UI object property list will be shown in
</div> </div>
<footer> <footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="../Orchestrator/01_Orchestrator.html" class="btn btn-neutral float-right" title="1. Description" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a> <a href="../Orchestrator/01_Orchestrator.html" class="btn btn-neutral float-right" title="1. Описание" accesskey="n" rel="next">Следующая <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="01_Studio.html" class="btn btn-neutral float-left" title="1. Описание" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a> <a href="01_Studio.html" class="btn btn-neutral float-left" title="1. Описание" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Предыдущая</a>
</div> </div>

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save