tab fixes, docs minor changes

dev-linux
Ivan Maslov 2 years ago
parent 671c5ecaa1
commit 349687fe45

@ -23,7 +23,7 @@ How to use both x32 and x64 python processes (it can be helpfully, if another ap
# Now you can use pyOpenRPA with both bitness. # Now you can use pyOpenRPA with both bitness.
.. automodule:: pyOpenRPA.Robot.UIDesktop .. automodule:: pyOpenRPA.Robot.Mouse
:members: :members:
:autosummary: :autosummary:

@ -185,7 +185,7 @@ def Write(inTextStr:str, inDelayFloat:float=0, inRestoreStateAfterBool:bool=True
:type inRestoreStateAfterBool: bool, опциональный :type inRestoreStateAfterBool: bool, опциональный
:param inExactBool: Печатает все знаки как явный unicode. Необязательный параметр :param inExactBool: Печатает все знаки как явный unicode. Необязательный параметр
:type inExactBool: bool, опциональный :type inExactBool: bool, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4) :param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный :type inWaitAfterSecFloat: float, опциональный
""" """
write(text=inTextStr, delay=inDelayFloat, restore_state_after=inRestoreStateAfterBool, exact=inExactBool) write(text=inTextStr, delay=inDelayFloat, restore_state_after=inRestoreStateAfterBool, exact=inExactBool)
@ -207,7 +207,7 @@ def HotkeyCombination(*inKeyList, inDelaySecFloat = 0.3,inWaitAfterSecFloat:floa
:param inKeyList: Список клавиш для одновременного нажатия. Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT,KEY_ENG_A :param inKeyList: Список клавиш для одновременного нажатия. Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT,KEY_ENG_A
:param inDelaySecFloat: Интервал между нажатиями. Необходим в связи с тем, что операционной системе требуется время на реакцию на нажатие клавиш, по умолчанию: 0.3 :param inDelaySecFloat: Интервал между нажатиями. Необходим в связи с тем, что операционной системе требуется время на реакцию на нажатие клавиш, по умолчанию: 0.3
:type inDelaySecFloat: float, опциональный :type inDelaySecFloat: float, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4) :param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный :type inWaitAfterSecFloat: float, опциональный
""" """
for l_key_item in inKeyList: for l_key_item in inKeyList:
@ -235,7 +235,7 @@ def HotkeyCtrlA_CtrlC(inWaitAfterSecFloat:float=0.4) -> None:
from pyOpenRPA.Robot import Keyboard from pyOpenRPA.Robot import Keyboard
Keyboard.HotkeyCtrlA_CtrlC() # Отправить команды: выделить все, скопировать в буфер обмена Keyboard.HotkeyCtrlA_CtrlC() # Отправить команды: выделить все, скопировать в буфер обмена
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4) :param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный :type inWaitAfterSecFloat: float, опциональный
""" """
HotkeyCombination(KEY_HOT_CTRL_LEFT,KEY_ENG_A) # Ctrl + a HotkeyCombination(KEY_HOT_CTRL_LEFT,KEY_ENG_A) # Ctrl + a
@ -245,7 +245,7 @@ def HotkeyCtrlA_CtrlC(inWaitAfterSecFloat:float=0.4) -> None:
def Send(inKeyInt:int, inDoPressBool:bool=True, inDoReleaseBool:bool=True,inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT) -> None: def Send(inKeyInt:int, inDoPressBool:bool=True, inDoReleaseBool:bool=True,inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT) -> None:
""" """
Имитация нажатия/отпускания любой физической клавиши. Посылает событие в операционную систему, которые выполняет нажатие и отпускание данной клавиши Имитация нажатия/отпускания любой физической клавиши. Посылает событие в операционную систему, которые выполняет нажатие и отпускание данной клавиши
ВНИМАНИЕ! ПРИ ПОПЫТКЕ ПЕЧАТИ ТЕКСТА БУДЕТ УЧИТЫВАТЬ ТЕКУЩУЮ РАСКЛАДКУ КЛАВИАТУРЫ. ДЛЯ ПЕЧАТИ ТЕКСТА ИСПОЛЬЗУЙ Write! ВНИМАНИЕ! ПРИ ПОПЫТКЕ ПЕЧАТИ ТЕКСТА БУДЕТ УЧИТЫВАТЬ ТЕКУЩУЮ РАСКЛАДКУ КЛАВИАТУРЫ. ДЛЯ ПЕЧАТИ ТЕКСТА ИСПОЛЬЗУЙ Write!
.. code-block:: python .. code-block:: python
@ -260,16 +260,16 @@ def Send(inKeyInt:int, inDoPressBool:bool=True, inDoReleaseBool:bool=True,inWait
:type inDoPressBool: bool, опциональный :type inDoPressBool: bool, опциональный
:param inDoReleaseBool: Выполнить событие отпускания клавиши, По умолчанию True :param inDoReleaseBool: Выполнить событие отпускания клавиши, По умолчанию True
:type inDoReleaseBool: bool, опциональный :type inDoReleaseBool: bool, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4) :param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный :type inWaitAfterSecFloat: float, опциональный
""" """
send(hotkey=inKeyInt, do_press=inDoPressBool, do_release=inDoReleaseBool) send(hotkey=inKeyInt, do_press=inDoPressBool, do_release=inDoReleaseBool)
time.sleep(inWaitAfterSecFloat) time.sleep(inWaitAfterSecFloat)
def Up(inKeyInt:int, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT) -> None: def Up(inKeyInt:int, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT) -> None:
""" """
Отпустить (поднять) клавишу. Если клавиша уже была поднята, то ничего не произойдет. Отпустить (поднять) клавишу. Если клавиша уже была поднята, то ничего не произойдет.
ВНИМАНИЕ! ПРИ ПОПЫТКЕ ПЕЧАТИ ТЕКСТА БУДЕТ УЧИТЫВАТЬ ТЕКУЩУЮ РАСКЛАДКУ КЛАВИАТУРЫ. ДЛЯ ПЕЧАТИ ТЕКСТА ИСПОЛЬЗУЙ Write! ВНИМАНИЕ! ПРИ ПОПЫТКЕ ПЕЧАТИ ТЕКСТА БУДЕТ УЧИТЫВАТЬ ТЕКУЩУЮ РАСКЛАДКУ КЛАВИАТУРЫ. ДЛЯ ПЕЧАТИ ТЕКСТА ИСПОЛЬЗУЙ Write!
.. code-block:: python .. code-block:: python
@ -280,16 +280,16 @@ def Up(inKeyInt:int, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT) -> None:
:param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT, KEY_ENG_A :param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT, KEY_ENG_A
:type inKeyInt: int :type inKeyInt: int
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4) :param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный :type inWaitAfterSecFloat: float, опциональный
""" """
send(hotkey=inKeyInt, do_press=False, do_release=True) send(hotkey=inKeyInt, do_press=False, do_release=True)
time.sleep(inWaitAfterSecFloat) time.sleep(inWaitAfterSecFloat)
def Down(inKeyInt:int, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT) -> None: def Down(inKeyInt:int, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT) -> None:
""" """
Нажать (опустить) клавишу. Если клавиша уже была опущена, то ничего не произойдет. Нажать (опустить) клавишу. Если клавиша уже была опущена, то ничего не произойдет.
ВНИМАНИЕ! ПРИ ПОПЫТКЕ ПЕЧАТИ ТЕКСТА БУДЕТ УЧИТЫВАТЬ ТЕКУЩУЮ РАСКЛАДКУ КЛАВИАТУРЫ. ДЛЯ ПЕЧАТИ ТЕКСТА ИСПОЛЬЗУЙ Write! ВНИМАНИЕ! ПРИ ПОПЫТКЕ ПЕЧАТИ ТЕКСТА БУДЕТ УЧИТЫВАТЬ ТЕКУЩУЮ РАСКЛАДКУ КЛАВИАТУРЫ. ДЛЯ ПЕЧАТИ ТЕКСТА ИСПОЛЬЗУЙ Write!
.. code-block:: python .. code-block:: python
@ -300,7 +300,7 @@ def Down(inKeyInt:int, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT) -> None:
:param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT, KEY_ENG_A :param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT, KEY_ENG_A
:type inKeyInt: int :type inKeyInt: int
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4) :param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный :type inWaitAfterSecFloat: float, опциональный
""" """
send(hotkey=inKeyInt, do_press=True, do_release=False) send(hotkey=inKeyInt, do_press=True, do_release=False)
@ -309,7 +309,7 @@ def Down(inKeyInt:int, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT) -> None:
def IsDown(inKeyInt:int) -> bool: def IsDown(inKeyInt:int) -> bool:
""" """
Проверить, опущена ли клавиша. Вернет True если опущена; False если поднята. Проверить, опущена ли клавиша. Вернет True если опущена; False если поднята.
ВНИМАНИЕ! ПРИ ПОПЫТКЕ ПЕЧАТИ ТЕКСТА БУДЕТ УЧИТЫВАТЬ ТЕКУЩУЮ РАСКЛАДКУ КЛАВИАТУРЫ. ДЛЯ ПЕЧАТИ ТЕКСТА ИСПОЛЬЗУЙ Write! ВНИМАНИЕ! ПРИ ПОПЫТКЕ ПЕЧАТИ ТЕКСТА БУДЕТ УЧИТЫВАТЬ ТЕКУЩУЮ РАСКЛАДКУ КЛАВИАТУРЫ. ДЛЯ ПЕЧАТИ ТЕКСТА ИСПОЛЬЗУЙ Write!
.. code-block:: python .. code-block:: python
@ -321,7 +321,7 @@ def IsDown(inKeyInt:int) -> bool:
:param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT, KEY_ENG_A :param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT, KEY_ENG_A
:type inKeyInt: int :type inKeyInt: int
""" """
return is_pressed(inKeyInt) return is_pressed(inKeyInt)
def Wait(inKeyInt:int,inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT): def Wait(inKeyInt:int,inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Блокирует осуществление программы, пока данная обозначенная клавиша не будет нажата. """Блокирует осуществление программы, пока данная обозначенная клавиша не будет нажата.
@ -335,7 +335,7 @@ def Wait(inKeyInt:int,inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
:param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT,KEY_ENG_A :param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT,KEY_ENG_A
:type inKeyInt: int :type inKeyInt: int
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4) :param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный :type inWaitAfterSecFloat: float, опциональный
""" """
wait(hotkey=inKeyInt) wait(hotkey=inKeyInt)

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

@ -103,23 +103,23 @@ mDefaultPywinautoBackend="win32"
#old:PywinautoExtElementsGet #old:PywinautoExtElementsGet
def UIOSelector_Get_UIOList (inSpecificationList,inElement=None,inFlagRaiseException=True): def UIOSelector_Get_UIOList (inSpecificationList,inElement=None,inFlagRaiseException=True):
''' '''
Получить список UIO объектов по UIO селектору Получить список UIO объектов по UIO селектору
.. code-block:: python .. code-block:: python
# UIDesktop: Взаимодействие с UI объектами приложений # UIDesktop: Взаимодействие с UI объектами приложений
from pyOpenRPA.Robot import UIDesktop from pyOpenRPA.Robot import UIDesktop
# 1С: UIO Селектор выбора базы # 1С: UIO Селектор выбора базы
lDemoBaseUIOSelector = [{"title":"Запуск 1С:Предприятия","class_name":"V8TopLevelFrameTaxiStarter","backend":"uia"},{"title":"DEMO", "depth_start": 5, "depth_end": 5}] lDemoBaseUIOSelector = [{"title":"Запуск 1С:Предприятия","class_name":"V8TopLevelFrameTaxiStarter","backend":"uia"},{"title":"DEMO", "depth_start": 5, "depth_end": 5}]
lDemoBaseUIOList = UIDesktop.UIOSelector_Get_UIOList(lDemoBaseUIOSelector) #Получить список UIO объектов, которые удовлетворяют требованиям UIO селектора. В нашем примере либо [], либо [UIO объект] lDemoBaseUIOList = UIDesktop.UIOSelector_Get_UIOList(lDemoBaseUIOSelector) #Получить список UIO объектов, которые удовлетворяют требованиям UIO селектора. В нашем примере либо [], либо [UIO объект]
:param inSpecificationList: UIO Селектор, который определяет критерии поиска UI элементов :param inSpecificationList: UIO Селектор, который определяет критерии поиска UI элементов
:type inSpecificationList: list, обязательный :type inSpecificationList: list, обязательный
:param inElement: Родительский элемент, от которого выполнить поиск UIO объектов по заданному UIO селектору. Если аргумент не задан, платформа выполнит поиск UIO объектов среди всех доступных приложений windows, которые запущены на текущей сессии :param inElement: Родительский элемент, от которого выполнить поиск UIO объектов по заданному UIO селектору. Если аргумент не задан, платформа выполнит поиск UIO объектов среди всех доступных приложений windows, которые запущены на текущей сессии
:type inElement: UIO объект, опциональный :type inElement: UIO объект, опциональный
:param inFlagRaiseException: True - формировать ошибку exception, если платформа не обнаружина ни одного UIO объекта по заданному UIO селектору. False - обратный случай. По умолчанию True :param inFlagRaiseException: True - формировать ошибку exception, если платформа не обнаружина ни одного UIO объекта по заданному UIO селектору. False - обратный случай. По умолчанию True
:type inFlagRaiseException: bool, опциональный :type inFlagRaiseException: bool, опциональный
:return: Список UIO объектов, которые удовлетворяют условиям UIO селектора :return: Список UIO объектов, которые удовлетворяют условиям UIO селектора
''' '''
#Создать копию входного листа, чтобы не менять массив в других верхнеуровневых функциях #Создать копию входного листа, чтобы не менять массив в других верхнеуровневых функциях
inSpecificationList=copy.deepcopy(inSpecificationList) inSpecificationList=copy.deepcopy(inSpecificationList)
@ -246,23 +246,23 @@ def UIOSelector_Get_UIOList (inSpecificationList,inElement=None,inFlagRaiseExcep
#old:PywinautoExtElementGet #old:PywinautoExtElementGet
def UIOSelector_Get_UIO (inSpecificationList,inElement=None,inFlagRaiseException=True): def UIOSelector_Get_UIO (inSpecificationList,inElement=None,inFlagRaiseException=True):
''' '''
Получить список UIO объект по UIO селектору. Если критериям UIO селектора удовлетворяет несколько UIO объектов - вернуть первый из списка Получить список UIO объект по UIO селектору. Если критериям UIO селектора удовлетворяет несколько UIO объектов - вернуть первый из списка
.. code-block:: python .. code-block:: python
# UIDesktop: Взаимодействие с UI объектами приложений # UIDesktop: Взаимодействие с UI объектами приложений
from pyOpenRPA.Robot import UIDesktop from pyOpenRPA.Robot import UIDesktop
# 1С: UIO Селектор выбора базы # 1С: UIO Селектор выбора базы
lDemoBaseUIOSelector = [{"title":"Запуск 1С:Предприятия","class_name":"V8TopLevelFrameTaxiStarter","backend":"uia"},{"title":"DEMO", "depth_start": 5, "depth_end": 5}] lDemoBaseUIOSelector = [{"title":"Запуск 1С:Предприятия","class_name":"V8TopLevelFrameTaxiStarter","backend":"uia"},{"title":"DEMO", "depth_start": 5, "depth_end": 5}]
lDemoBaseUIOList = UIDesktop.UIOSelector_Get_UIO(lDemoBaseUIOSelector) #Получить 1-й UIO объект, которые удовлетворяет требованиям UIO селектора. В нашем примере либо None, либо UIO объект lDemoBaseUIOList = UIDesktop.UIOSelector_Get_UIO(lDemoBaseUIOSelector) #Получить 1-й UIO объект, которые удовлетворяет требованиям UIO селектора. В нашем примере либо None, либо UIO объект
:param inSpecificationList: UIO Селектор, который определяет критерии поиска UI элементов :param inSpecificationList: UIO Селектор, который определяет критерии поиска UI элементов
:type inSpecificationList: list, обязательный :type inSpecificationList: list, обязательный
:param inElement: Родительский элемент, от которого выполнить поиск UIO объектов по заданному UIO селектору. Если аргумент не задан, платформа выполнит поиск UIO объектов среди всех доступных приложений windows, которые запущены на текущей сессии :param inElement: Родительский элемент, от которого выполнить поиск UIO объектов по заданному UIO селектору. Если аргумент не задан, платформа выполнит поиск UIO объектов среди всех доступных приложений windows, которые запущены на текущей сессии
:type inElement: UIO объект, опциональный :type inElement: UIO объект, опциональный
:param inFlagRaiseException: True - формировать ошибку exception, если платформа не обнаружина ни одного UIO объекта по заданному UIO селектору. False - обратный случай. По умолчанию True :param inFlagRaiseException: True - формировать ошибку exception, если платформа не обнаружина ни одного UIO объекта по заданному UIO селектору. False - обратный случай. По умолчанию True
:type inFlagRaiseException: bool, опциональный :type inFlagRaiseException: bool, опциональный
:return: UIO объект, которые удовлетворяют условиям UIO селектора, или None :return: UIO объект, которые удовлетворяют условиям UIO селектора, или None
''' '''
lResult=None lResult=None
#Получить родительский объект если на вход ничего не поступило #Получить родительский объект если на вход ничего не поступило
@ -273,25 +273,25 @@ def UIOSelector_Get_UIO (inSpecificationList,inElement=None,inFlagRaiseException
if lResult is None and inFlagRaiseException: if lResult is None and inFlagRaiseException:
raise pywinauto.findwindows.ElementNotFoundError("Robot can't find element by the UIOSelector") raise pywinauto.findwindows.ElementNotFoundError("Robot can't find element by the UIOSelector")
return lResult return lResult
#old:- #old:-
def UIOSelector_Exist_Bool (inUIOSelector): def UIOSelector_Exist_Bool (inUIOSelector):
''' '''
Проверить существование хотя бы 1-го UIO объекта по заданному UIO селектору Проверить существование хотя бы 1-го UIO объекта по заданному UIO селектору
!ВНИМАНИЕ! ДАННАЯ ФУНКЦИОНАЛЬНОСТЬ В АВТОМАТИЧЕСКОМ РЕЖИМЕ ПОДДЕРЖИВАЕТ ВСЕ РАЗРЯДНОСТИ ПРИЛОЖЕНИЙ (32|64), КОТОРЫЕ ЗАПУЩЕНЫ В СЕСИИ. PYTHON x64 ИМЕЕТ ВОЗМОЖНОСТЬ ВЗЗАИМОДЕЙСТВИЯ С x32 UIO ОБЪЕКТАМИ, НО МЫ РЕКОМЕНДУЕМ ДОПОЛНИТЕЛЬНО ИСПОЛЬЗОВАТЬ ИНТЕРПРЕТАТОР PYTHON x32 (ПОДРОБНЕЕ СМ. ФУНКЦИЮ Configure()) !ВНИМАНИЕ! ДАННАЯ ФУНКЦИОНАЛЬНОСТЬ В АВТОМАТИЧЕСКОМ РЕЖИМЕ ПОДДЕРЖИВАЕТ ВСЕ РАЗРЯДНОСТИ ПРИЛОЖЕНИЙ (32|64), КОТОРЫЕ ЗАПУЩЕНЫ В СЕСИИ. PYTHON x64 ИМЕЕТ ВОЗМОЖНОСТЬ ВЗЗАИМОДЕЙСТВИЯ С x32 UIO ОБЪЕКТАМИ, НО МЫ РЕКОМЕНДУЕМ ДОПОЛНИТЕЛЬНО ИСПОЛЬЗОВАТЬ ИНТЕРПРЕТАТОР PYTHON x32 (ПОДРОБНЕЕ СМ. ФУНКЦИЮ Configure())
.. code-block:: python .. code-block:: python
# UIDesktop: Взаимодействие с UI объектами приложений # UIDesktop: Взаимодействие с UI объектами приложений
from pyOpenRPA.Robot import UIDesktop from pyOpenRPA.Robot import UIDesktop
# 1С: UIO Селектор выбора базы # 1С: UIO Селектор выбора базы
lDemoBaseUIOSelector = [{"title":"Запуск 1С:Предприятия","class_name":"V8TopLevelFrameTaxiStarter","backend":"uia"},{"title":"DEMO", "depth_start": 5, "depth_end": 5}] lDemoBaseUIOSelector = [{"title":"Запуск 1С:Предприятия","class_name":"V8TopLevelFrameTaxiStarter","backend":"uia"},{"title":"DEMO", "depth_start": 5, "depth_end": 5}]
lDemoBaseUIOExistBool = UIDesktop.UIOSelector_Exist_Bool(lDemoBaseUIOSelector) # Получить булевый результат проверки существования UIO объекта lDemoBaseUIOExistBool = UIDesktop.UIOSelector_Exist_Bool(lDemoBaseUIOSelector) # Получить булевый результат проверки существования UIO объекта
:param inUIOSelector: UIO Селектор, который определяет критерии поиска UIO объектов :param inUIOSelector: UIO Селектор, который определяет критерии поиска UIO объектов
:type inUIOSelector: list, обязательный :type inUIOSelector: list, обязательный
:return: True - существует хотя бы 1 UIO объект. False - не существует ни одного UIO объекта по заданному UIO селектору :return: True - существует хотя бы 1 UIO объект. False - не существует ни одного UIO объекта по заданному UIO селектору
''' '''
lResult=False lResult=False
#Check the bitness #Check the bitness
@ -320,22 +320,22 @@ def UIOSelector_Exist_Bool (inUIOSelector):
#old: - #old: -
def UIOSelectorsSecs_WaitAppear_List (inSpecificationListList,inWaitSecs=86400.0,inFlagWaitAllInMoment=False): def UIOSelectorsSecs_WaitAppear_List (inSpecificationListList,inWaitSecs=86400.0,inFlagWaitAllInMoment=False):
''' '''
Ожидать появление хотя бы 1-го / всех UIO объектов по заданным UIO селекторам Ожидать появление хотя бы 1-го / всех UIO объектов по заданным UIO селекторам
!ВНИМАНИЕ! ДАННАЯ ФУНКЦИОНАЛЬНОСТЬ В АВТОМАТИЧЕСКОМ РЕЖИМЕ ПОДДЕРЖИВАЕТ ВСЕ РАЗРЯДНОСТИ ПРИЛОЖЕНИЙ (32|64), КОТОРЫЕ ЗАПУЩЕНЫ В СЕСИИ. PYTHON x64 ИМЕЕТ ВОЗМОЖНОСТЬ ВЗЗАИМОДЕЙСТВИЯ С x32 UIO ОБЪЕКТАМИ, НО МЫ РЕКОМЕНДУЕМ ДОПОЛНИТЕЛЬНО ИСПОЛЬЗОВАТЬ ИНТЕРПРЕТАТОР PYTHON x32 (ПОДРОБНЕЕ СМ. ФУНКЦИЮ Configure()) !ВНИМАНИЕ! ДАННАЯ ФУНКЦИОНАЛЬНОСТЬ В АВТОМАТИЧЕСКОМ РЕЖИМЕ ПОДДЕРЖИВАЕТ ВСЕ РАЗРЯДНОСТИ ПРИЛОЖЕНИЙ (32|64), КОТОРЫЕ ЗАПУЩЕНЫ В СЕСИИ. PYTHON x64 ИМЕЕТ ВОЗМОЖНОСТЬ ВЗЗАИМОДЕЙСТВИЯ С x32 UIO ОБЪЕКТАМИ, НО МЫ РЕКОМЕНДУЕМ ДОПОЛНИТЕЛЬНО ИСПОЛЬЗОВАТЬ ИНТЕРПРЕТАТОР PYTHON x32 (ПОДРОБНЕЕ СМ. ФУНКЦИЮ Configure())
.. code-block:: python .. code-block:: python
# UIDesktop: Взаимодействие с UI объектами приложений # UIDesktop: Взаимодействие с UI объектами приложений
from pyOpenRPA.Robot import UIDesktop from pyOpenRPA.Robot import UIDesktop
# 1С: UIO Селектор выбора базы # 1С: UIO Селектор выбора базы
lDemoBaseUIOSelector = [{"title":"Запуск 1С:Предприятия","class_name":"V8TopLevelFrameTaxiStarter","backend":"uia"},{"title":"DEMO", "depth_start": 5, "depth_end": 5}] lDemoBaseUIOSelector = [{"title":"Запуск 1С:Предприятия","class_name":"V8TopLevelFrameTaxiStarter","backend":"uia"},{"title":"DEMO", "depth_start": 5, "depth_end": 5}]
lNotepadOKSelector = [{"title":"notepad"},{"title":"OK"}] lNotepadOKSelector = [{"title":"notepad"},{"title":"OK"}]
lNotepadCancelSelector = [{"title":"notepad"},{"title":"Cancel"}] lNotepadCancelSelector = [{"title":"notepad"},{"title":"Cancel"}]
lDemoBaseUIOExistList = UIDesktop.UIOSelectorsSecs_WaitAppear_List([lDemoBaseUIOSelector, lNotepadOKSelector, lNotepadCancelSelector]) # Ожидать появление UIO объекта lDemoBaseUIOExistList = UIDesktop.UIOSelectorsSecs_WaitAppear_List([lDemoBaseUIOSelector, lNotepadOKSelector, lNotepadCancelSelector]) # Ожидать появление UIO объекта
:param inSpecificationListList: Список UIO селекторов, которые определяют критерии поиска UIO объектов :param inSpecificationListList: Список UIO селекторов, которые определяют критерии поиска UIO объектов
Пример: [ Пример: [
[{"title":"notepad"},{"title":"OK"}], [{"title":"notepad"},{"title":"OK"}],
[{"title":"notepad"},{"title":"Cancel"}] [{"title":"notepad"},{"title":"Cancel"}]
] ]
@ -343,7 +343,7 @@ def UIOSelectorsSecs_WaitAppear_List (inSpecificationListList,inWaitSecs=86400.0
:param inWaitSecs: Количество секунд, которые отвести на ожидание UIO объектов. По умолчанию 24 часа (86400 секунд) :param inWaitSecs: Количество секунд, которые отвести на ожидание UIO объектов. По умолчанию 24 часа (86400 секунд)
:type inWaitSecs: float, необязательный :type inWaitSecs: float, необязательный
:param inFlagWaitAllInMoment: True - Ожидать до того момента, пока не появятся все запрашиваемые UIO объекты на рабочей области :param inFlagWaitAllInMoment: True - Ожидать до того момента, пока не появятся все запрашиваемые UIO объекты на рабочей области
:return: Список индексов, которые указывают на номер входящих UIO селекторов, которые были обнаружены на рабочей области. Пример: [0,2] :return: Список индексов, которые указывают на номер входящих UIO селекторов, которые были обнаружены на рабочей области. Пример: [0,2]
''' '''
lResultFlag=False lResultFlag=False
lSecsSleep = 1 #Настроечный параметр lSecsSleep = 1 #Настроечный параметр
@ -378,22 +378,22 @@ def UIOSelectorsSecs_WaitAppear_List (inSpecificationListList,inWaitSecs=86400.0
#old: - #old: -
def UIOSelectorsSecs_WaitDisappear_List (inSpecificationListList,inWaitSecs=86400.0,inFlagWaitAllInMoment=False): def UIOSelectorsSecs_WaitDisappear_List (inSpecificationListList,inWaitSecs=86400.0,inFlagWaitAllInMoment=False):
''' '''
Ожидать исчезновение хотя бы 1-го / всех UIO объектов по заданным UIO селекторам Ожидать исчезновение хотя бы 1-го / всех UIO объектов по заданным UIO селекторам
!ВНИМАНИЕ! ДАННАЯ ФУНКЦИОНАЛЬНОСТЬ В АВТОМАТИЧЕСКОМ РЕЖИМЕ ПОДДЕРЖИВАЕТ ВСЕ РАЗРЯДНОСТИ ПРИЛОЖЕНИЙ (32|64), КОТОРЫЕ ЗАПУЩЕНЫ В СЕСИИ. PYTHON x64 ИМЕЕТ ВОЗМОЖНОСТЬ ВЗЗАИМОДЕЙСТВИЯ С x32 UIO ОБЪЕКТАМИ, НО МЫ РЕКОМЕНДУЕМ ДОПОЛНИТЕЛЬНО ИСПОЛЬЗОВАТЬ ИНТЕРПРЕТАТОР PYTHON x32 (ПОДРОБНЕЕ СМ. ФУНКЦИЮ Configure()) !ВНИМАНИЕ! ДАННАЯ ФУНКЦИОНАЛЬНОСТЬ В АВТОМАТИЧЕСКОМ РЕЖИМЕ ПОДДЕРЖИВАЕТ ВСЕ РАЗРЯДНОСТИ ПРИЛОЖЕНИЙ (32|64), КОТОРЫЕ ЗАПУЩЕНЫ В СЕСИИ. PYTHON x64 ИМЕЕТ ВОЗМОЖНОСТЬ ВЗЗАИМОДЕЙСТВИЯ С x32 UIO ОБЪЕКТАМИ, НО МЫ РЕКОМЕНДУЕМ ДОПОЛНИТЕЛЬНО ИСПОЛЬЗОВАТЬ ИНТЕРПРЕТАТОР PYTHON x32 (ПОДРОБНЕЕ СМ. ФУНКЦИЮ Configure())
.. code-block:: python .. code-block:: python
# UIDesktop: Взаимодействие с UI объектами приложений # UIDesktop: Взаимодействие с UI объектами приложений
from pyOpenRPA.Robot import UIDesktop from pyOpenRPA.Robot import UIDesktop
# 1С: UIO Селектор выбора базы # 1С: UIO Селектор выбора базы
lDemoBaseUIOSelector = [{"title":"Запуск 1С:Предприятия","class_name":"V8TopLevelFrameTaxiStarter","backend":"uia"},{"title":"DEMO", "depth_start": 5, "depth_end": 5}] lDemoBaseUIOSelector = [{"title":"Запуск 1С:Предприятия","class_name":"V8TopLevelFrameTaxiStarter","backend":"uia"},{"title":"DEMO", "depth_start": 5, "depth_end": 5}]
lNotepadOKSelector = [{"title":"notepad"},{"title":"OK"}] lNotepadOKSelector = [{"title":"notepad"},{"title":"OK"}]
lNotepadCancelSelector = [{"title":"notepad"},{"title":"Cancel"}] lNotepadCancelSelector = [{"title":"notepad"},{"title":"Cancel"}]
lDemoBaseUIOExistList = UIDesktop.UIOSelectorsSecs_WaitDisappear_List([lDemoBaseUIOSelector, lNotepadOKSelector, lNotepadCancelSelector]) # Ожидать исчезновение UIO объектов lDemoBaseUIOExistList = UIDesktop.UIOSelectorsSecs_WaitDisappear_List([lDemoBaseUIOSelector, lNotepadOKSelector, lNotepadCancelSelector]) # Ожидать исчезновение UIO объектов
:param inSpecificationListList: Список UIO селекторов, которые определяют критерии поиска UIO объектов :param inSpecificationListList: Список UIO селекторов, которые определяют критерии поиска UIO объектов
Пример: [ Пример: [
[{"title":"notepad"},{"title":"OK"}], [{"title":"notepad"},{"title":"OK"}],
[{"title":"notepad"},{"title":"Cancel"}] [{"title":"notepad"},{"title":"Cancel"}]
] ]
@ -401,7 +401,7 @@ def UIOSelectorsSecs_WaitDisappear_List (inSpecificationListList,inWaitSecs=8640
:param inWaitSecs: Количество секунд, которые отвести на ожидание исчезновения UIO объектов. По умолчанию 24 часа (86400 секунд) :param inWaitSecs: Количество секунд, которые отвести на ожидание исчезновения UIO объектов. По умолчанию 24 часа (86400 секунд)
:type inWaitSecs: float, необязательный :type inWaitSecs: float, необязательный
:param inFlagWaitAllInMoment: True - Ожидать до того момента, пока не исчезнут все запрашиваемые UIO объекты на рабочей области :param inFlagWaitAllInMoment: True - Ожидать до того момента, пока не исчезнут все запрашиваемые UIO объекты на рабочей области
:return: Список индексов, которые указывают на номер входящих UIO селекторов, которые были обнаружены на рабочей области. Пример: [0,2] :return: Список индексов, которые указывают на номер входящих UIO селекторов, которые были обнаружены на рабочей области. Пример: [0,2]
''' '''
lResultFlag=False lResultFlag=False
@ -437,23 +437,23 @@ def UIOSelectorsSecs_WaitDisappear_List (inSpecificationListList,inWaitSecs=8640
#old: - #old: -
def UIOSelectorSecs_WaitAppear_Bool (inSpecificationList,inWaitSecs): def UIOSelectorSecs_WaitAppear_Bool (inSpecificationList,inWaitSecs):
''' '''
Ожидать появление 1-го UIO объекта по заданному UIO селектору Ожидать появление 1-го UIO объекта по заданному UIO селектору
!ВНИМАНИЕ! ДАННАЯ ФУНКЦИОНАЛЬНОСТЬ В АВТОМАТИЧЕСКОМ РЕЖИМЕ ПОДДЕРЖИВАЕТ ВСЕ РАЗРЯДНОСТИ ПРИЛОЖЕНИЙ (32|64), КОТОРЫЕ ЗАПУЩЕНЫ В СЕСИИ. PYTHON x64 ИМЕЕТ ВОЗМОЖНОСТЬ ВЗЗАИМОДЕЙСТВИЯ С x32 UIO ОБЪЕКТАМИ, НО МЫ РЕКОМЕНДУЕМ ДОПОЛНИТЕЛЬНО ИСПОЛЬЗОВАТЬ ИНТЕРПРЕТАТОР PYTHON x32 (ПОДРОБНЕЕ СМ. ФУНКЦИЮ Configure()) !ВНИМАНИЕ! ДАННАЯ ФУНКЦИОНАЛЬНОСТЬ В АВТОМАТИЧЕСКОМ РЕЖИМЕ ПОДДЕРЖИВАЕТ ВСЕ РАЗРЯДНОСТИ ПРИЛОЖЕНИЙ (32|64), КОТОРЫЕ ЗАПУЩЕНЫ В СЕСИИ. PYTHON x64 ИМЕЕТ ВОЗМОЖНОСТЬ ВЗЗАИМОДЕЙСТВИЯ С x32 UIO ОБЪЕКТАМИ, НО МЫ РЕКОМЕНДУЕМ ДОПОЛНИТЕЛЬНО ИСПОЛЬЗОВАТЬ ИНТЕРПРЕТАТОР PYTHON x32 (ПОДРОБНЕЕ СМ. ФУНКЦИЮ Configure())
.. code-block:: python .. code-block:: python
# UIDesktop: Взаимодействие с UI объектами приложений # UIDesktop: Взаимодействие с UI объектами приложений
from pyOpenRPA.Robot import UIDesktop from pyOpenRPA.Robot import UIDesktop
# 1С: UIO Селектор выбора базы # 1С: UIO Селектор выбора базы
lDemoBaseUIOSelector = [{"title":"Запуск 1С:Предприятия","class_name":"V8TopLevelFrameTaxiStarter","backend":"uia"},{"title":"DEMO", "depth_start": 5, "depth_end": 5}] lDemoBaseUIOSelector = [{"title":"Запуск 1С:Предприятия","class_name":"V8TopLevelFrameTaxiStarter","backend":"uia"},{"title":"DEMO", "depth_start": 5, "depth_end": 5}]
lDemoBaseUIOExistBool = UIDesktop.UIOSelectorSecs_WaitAppear_Bool(lDemoBaseUIOSelector) # Ожидать появление UIO объекта lDemoBaseUIOExistBool = UIDesktop.UIOSelectorSecs_WaitAppear_Bool(lDemoBaseUIOSelector) # Ожидать появление UIO объекта
:param inSpecificationList: UIO селектор, который определяет критерии поиска UIO объекта :param inSpecificationList: UIO селектор, который определяет критерии поиска UIO объекта
:type inSpecificationList: list, обязательный :type inSpecificationList: list, обязательный
:param inWaitSecs: Количество секунд, которые отвести на ожидание UIO объекта. По умолчанию 24 часа (86400 секунд) :param inWaitSecs: Количество секунд, которые отвести на ожидание UIO объекта. По умолчанию 24 часа (86400 секунд)
:type inWaitSecs: float, необязательный :type inWaitSecs: float, необязательный
:return: True - UIO объект был обнаружен. False - обратная ситуациая :return: True - UIO объект был обнаружен. False - обратная ситуациая
''' '''
lWaitAppearList=UIOSelectorsSecs_WaitAppear_List([inSpecificationList],inWaitSecs) lWaitAppearList=UIOSelectorsSecs_WaitAppear_List([inSpecificationList],inWaitSecs)
lResult=False lResult=False
@ -464,23 +464,23 @@ def UIOSelectorSecs_WaitAppear_Bool (inSpecificationList,inWaitSecs):
#old name - - #old name - -
def UIOSelectorSecs_WaitDisappear_Bool (inSpecificationList,inWaitSecs): def UIOSelectorSecs_WaitDisappear_Bool (inSpecificationList,inWaitSecs):
''' '''
Ожидать исчезновение 1-го UIO объекта по заданному UIO селектору Ожидать исчезновение 1-го UIO объекта по заданному UIO селектору
!ВНИМАНИЕ! ДАННАЯ ФУНКЦИОНАЛЬНОСТЬ В АВТОМАТИЧЕСКОМ РЕЖИМЕ ПОДДЕРЖИВАЕТ ВСЕ РАЗРЯДНОСТИ ПРИЛОЖЕНИЙ (32|64), КОТОРЫЕ ЗАПУЩЕНЫ В СЕСИИ. PYTHON x64 ИМЕЕТ ВОЗМОЖНОСТЬ ВЗЗАИМОДЕЙСТВИЯ С x32 UIO ОБЪЕКТАМИ, НО МЫ РЕКОМЕНДУЕМ ДОПОЛНИТЕЛЬНО ИСПОЛЬЗОВАТЬ ИНТЕРПРЕТАТОР PYTHON x32 (ПОДРОБНЕЕ СМ. ФУНКЦИЮ Configure()) !ВНИМАНИЕ! ДАННАЯ ФУНКЦИОНАЛЬНОСТЬ В АВТОМАТИЧЕСКОМ РЕЖИМЕ ПОДДЕРЖИВАЕТ ВСЕ РАЗРЯДНОСТИ ПРИЛОЖЕНИЙ (32|64), КОТОРЫЕ ЗАПУЩЕНЫ В СЕСИИ. PYTHON x64 ИМЕЕТ ВОЗМОЖНОСТЬ ВЗЗАИМОДЕЙСТВИЯ С x32 UIO ОБЪЕКТАМИ, НО МЫ РЕКОМЕНДУЕМ ДОПОЛНИТЕЛЬНО ИСПОЛЬЗОВАТЬ ИНТЕРПРЕТАТОР PYTHON x32 (ПОДРОБНЕЕ СМ. ФУНКЦИЮ Configure())
.. code-block:: python .. code-block:: python
# UIDesktop: Взаимодействие с UI объектами приложений # UIDesktop: Взаимодействие с UI объектами приложений
from pyOpenRPA.Robot import UIDesktop from pyOpenRPA.Robot import UIDesktop
# 1С: UIO Селектор выбора базы # 1С: UIO Селектор выбора базы
lDemoBaseUIOSelector = [{"title":"Запуск 1С:Предприятия","class_name":"V8TopLevelFrameTaxiStarter","backend":"uia"},{"title":"DEMO", "depth_start": 5, "depth_end": 5}] lDemoBaseUIOSelector = [{"title":"Запуск 1С:Предприятия","class_name":"V8TopLevelFrameTaxiStarter","backend":"uia"},{"title":"DEMO", "depth_start": 5, "depth_end": 5}]
lDemoBaseUIOExistBool = UIDesktop.UIOSelectorSecs_WaitDisappear_Bool(lDemoBaseUIOSelector) # Ожидать исчезновение UIO объекта lDemoBaseUIOExistBool = UIDesktop.UIOSelectorSecs_WaitDisappear_Bool(lDemoBaseUIOSelector) # Ожидать исчезновение UIO объекта
:param inSpecificationList: UIO селектор, который определяет критерии поиска UIO объекта :param inSpecificationList: UIO селектор, который определяет критерии поиска UIO объекта
:type inSpecificationList: list, обязательный :type inSpecificationList: list, обязательный
:param inWaitSecs: Количество секунд, которые отвести на исчезновение UIO объекта. По умолчанию 24 часа (86400 секунд) :param inWaitSecs: Количество секунд, которые отвести на исчезновение UIO объекта. По умолчанию 24 часа (86400 секунд)
:type inWaitSecs: float, необязательный :type inWaitSecs: float, необязательный
:return: True - UIO объект был обнаружен. False - обратная ситуациая :return: True - UIO объект был обнаружен. False - обратная ситуациая
''' '''
lWaitDisappearList=UIOSelectorsSecs_WaitDisappear_List([inSpecificationList],inWaitSecs) lWaitDisappearList=UIOSelectorsSecs_WaitDisappear_List([inSpecificationList],inWaitSecs)
lResult=False lResult=False
@ -491,19 +491,19 @@ def UIOSelectorSecs_WaitDisappear_Bool (inSpecificationList,inWaitSecs):
#old: - #old: -
def UIOSelector_Get_BitnessInt (inSpecificationList): def UIOSelector_Get_BitnessInt (inSpecificationList):
''' '''
Определить разрядность приложения по UIO селектору. Вернуть результат в формате целого числа (64 или 32) Определить разрядность приложения по UIO селектору. Вернуть результат в формате целого числа (64 или 32)
.. code-block:: python .. code-block:: python
# UIDesktop: Взаимодействие с UI объектами приложений # UIDesktop: Взаимодействие с UI объектами приложений
from pyOpenRPA.Robot import UIDesktop from pyOpenRPA.Robot import UIDesktop
# 1С: UIO Селектор выбора базы # 1С: UIO Селектор выбора базы
lDemoBaseUIOSelector = [{"title":"Запуск 1С:Предприятия","class_name":"V8TopLevelFrameTaxiStarter","backend":"uia"},{"title":"DEMO", "depth_start": 5, "depth_end": 5}] lDemoBaseUIOSelector = [{"title":"Запуск 1С:Предприятия","class_name":"V8TopLevelFrameTaxiStarter","backend":"uia"},{"title":"DEMO", "depth_start": 5, "depth_end": 5}]
lDemoBaseBitInt = UIDesktop.UIOSelector_Get_BitnessInt(lDemoBaseUIOSelector) # Определить разрядность приложения, в котором обнаружен UIO объект по селектору lDemoBaseBitInt = UIDesktop.UIOSelector_Get_BitnessInt(lDemoBaseUIOSelector) # Определить разрядность приложения, в котором обнаружен UIO объект по селектору
:param inSpecificationList: UIO селектор, который определяет критерии поиска UIO объекта :param inSpecificationList: UIO селектор, который определяет критерии поиска UIO объекта
:type inSpecificationList: list, обязательный :type inSpecificationList: list, обязательный
:return: None - UIO объект не обнаружен; 64 (int) - разрядность приложения равна 64 битам; 32 (int) - разрядность приложения равна 32 битам :return: None - UIO объект не обнаружен; 64 (int) - разрядность приложения равна 64 битам; 32 (int) - разрядность приложения равна 32 битам
''' '''
lResult=None lResult=None
#Получить объект Application (Для проверки разрядности) #Получить объект Application (Для проверки разрядности)
@ -517,21 +517,21 @@ def UIOSelector_Get_BitnessInt (inSpecificationList):
#old: - #old: -
def UIOSelector_Get_BitnessStr (inSpecificationList): def UIOSelector_Get_BitnessStr (inSpecificationList):
''' """
Определить разрядность приложения по UIO селектору. Вернуть результат в формате строки ("64" или "32") Определить разрядность приложения по UIO селектору. Вернуть результат в формате строки ("64" или "32")
.. code-block:: python .. code-block:: python
# UIDesktop: Взаимодействие с UI объектами приложений # UIDesktop: Взаимодействие с UI объектами приложений
from pyOpenRPA.Robot import UIDesktop from pyOpenRPA.Robot import UIDesktop
# 1С: UIO Селектор выбора базы # 1С: UIO Селектор выбора базы
lDemoBaseUIOSelector = [{"title":"Запуск 1С:Предприятия","class_name":"V8TopLevelFrameTaxiStarter","backend":"uia"},{"title":"DEMO", "depth_start": 5, "depth_end": 5}] lDemoBaseUIOSelector = [{"title":"Запуск 1С:Предприятия","class_name":"V8TopLevelFrameTaxiStarter","backend":"uia"},{"title":"DEMO", "depth_start": 5, "depth_end": 5}]
lDemoBaseBitStr = UIDesktop.UIOSelector_Get_BitnessStr(lDemoBaseUIOSelector) # Определить разрядность приложения, в котором обнаружен UIO объект по селектору lDemoBaseBitStr = UIDesktop.UIOSelector_Get_BitnessStr(lDemoBaseUIOSelector) # Определить разрядность приложения, в котором обнаружен UIO объект по селектору
:param inSpecificationList: UIO селектор, который определяет критерии поиска UIO объекта :param inSpecificationList: UIO селектор, который определяет критерии поиска UIO объекта
:type inSpecificationList: list, обязательный :type inSpecificationList: list, обязательный
:return: None - UIO объект не обнаружен; "64" (str) - разрядность приложения равна 64 битам; "32" (str) - разрядность приложения равна 32 битам :return: None - UIO объект не обнаружен; "64" (str) - разрядность приложения равна 64 битам; "32" (str) - разрядность приложения равна 32 битам
''' """
lResult=None lResult=None
#Получить объект Application (Для проверки разрядности) #Получить объект Application (Для проверки разрядности)
lRootElement=PWASpecification_Get_PWAApplication(inSpecificationList) lRootElement=PWASpecification_Get_PWAApplication(inSpecificationList)
@ -545,13 +545,14 @@ def UIOSelector_Get_BitnessStr (inSpecificationList):
#old: - #old: -
def Get_OSBitnessInt (): def Get_OSBitnessInt ():
''' '''
Определить разрядность робота, в котором запускается данная функция Определить разрядность робота, в котором запускается данная функция
.. code-block:: python .. code-block:: python
from pyOpenRPA.Robot import UIDesktop from pyOpenRPA.Robot import UIDesktop
lRobotBitInt = UIDesktop.Get_OSBitnessInt() # Определить разрядность робота, в котором была вызвана это функция lRobotBitInt = UIDesktop.Get_OSBitnessInt() # Определить разрядность робота, в котором была вызвана это функция
:return: 64 (int) - разрядность приложения равна 64 битам; 32 (int) - разрядность приложения равна 32 битам
:return: 64 (int) - разрядность приложения равна 64 битам; 32 (int) - разрядность приложения равна 32 битам
''' '''
lResult=32 lResult=32
if pywinauto.sysinfo.is_x64_OS(): if pywinauto.sysinfo.is_x64_OS():

Loading…
Cancel
Save