Мы знаем, что с pyOpenRPA вы сможете существенно улучшить качество вашего бизнеса. Платформа роботизации pyOpenRPA - это разработка, которая дает возможность делать виртуальных сотрудников (программных роботов RPA) выгодными, начиная от эффекта всего в **10 тыс. руб.** И управлять ими будете только Вы!
Если у вас останутся вопросы, то вы всегда можете обратиться в центр поддержки клиентов pyOpenRPA. Контакты: 2. Лицензия & Контакты
pyOpenRPA - роботы помогут!
## Класс Box
Экземпляр класса pyscreeze.Box, который характеризует прямоугольную область на экране.
top - координата левой верхней точки в пикселях по оси X (горизонталь)
left - координата левой верхней точки в пикселях по оси Y (вертикаль)
height - расстояние вниз от левой верхней точки в пикселях
width - расстояние вправо от левой верхней точки в пикселях
## Класс Point
Экземпляр класса pyscreeze.Point, который характеризует точку на экране.
x - координата точки в пикселях по оси X (горизонталь)
y - координата точки в пикселях по оси Y (вертикаль)
## Символьное указание точки (inPointRuleStr)
### LU|CU|RU
### LC|CC|RC
LD|CD|RD
Символьное указание точки - точка относительно которой выполнить изменение прямоугольной области.
> «CC»,
Формат образования кода: XY, где
* X обозначает положение по горизонтали (допустимые значения: «L», «C», «R»)
* Y обозначает положение по вертикали (допустимые значения: «U», «C», «D»)
Допустимые значения:
* «CC» - центр по горизонтали, центр по вертикали
* «LU» - левый край по горизонтали, верхний край по вертикали
* «LD» - левый край по горизонтали, нижний край по вертикали
* «RD» - правый край по горизонтали, нижний край по вертикали
* «RU» - правый край по горизонтали, верхний край по вертикали
X-10 - корректировка координаты по оси X на 10 пикселей влево
Y+20 - корректировка координаты по оси Y на 20 пикселей вниз
## Символьное указание области (inAnchorRuleStr)
### LU|CU|RU
### LC|CC|RC
LD|CD|RD
Символьное указание области поиска - область относительно которой выполнить поиск другой прямоугольной области.
> «CC»,
Формат образования кода: XY, где
* X обозначает область по горизонтали (допустимые значения: «L», «C», «R»)
* Y обозначает область по вертикали (допустимые значения: «U», «C», «D»)
Допустимые значения:
* «CC» - выбранная прямоугольная область
* «LU» - слева и сверху от выбранной прямоугольной области
* «LD» - слева и снизу от выбранной прямоугольной области
* «LС» - слева от выбранной прямоугольной области
* «RC» - справа от выбранной прямоугольной области
* «СU» - сверху от выбранной прямоугольной области
* «CD» - сверху от выбранной прямоугольной области
* «RD» - справа и снизу от выбранной прямоугольной области
* «RU» - справа и сверху от выбранной прямоугольной области
Опция «S» (strict) - искомый объект должен всеми своими координатами находиться в обозначенной прямоугольной области
Формат допускает комбинации нескольких областей в одной строке.
l = Screen.BoxAnchorRuleCheck(inBox=lBox1, inAnchorBox=[lBox2,lBox3], inAnchorRuleStr=["LD","CUS"])
Screen.BoxDraw([lBox1,lBox2,lBox3])
```
* **Параметры**
* **inBox** (*pyscreeze.Box*) – Экземпляр класса прямоугольной области Box
* **inAnchorBox** (*pyscreeze.Box или list из pyscreeze.Box*) – Экземпляр класса прямоугольной области Box
* **inAnchorRuleStr** (*str или list из str*) – Символьное указание области проверки соответствия. Может принимать единственное значение (единый формат для всех inAnchorBox), или список форматов для каждого inAnchorBox (если inAnchorBox является списком Box)
* **inBox** (*pyscreeze.Box**, **обязательный*) – Прямоугольная область на экране
* **inPointRuleStr** (*str**, **опциональный*) – Правило идентификации точки на прямоугольной области (правила формирования см. выше). Варианты: «LU»,»CU»,»RU»,»LC»,»CC»,»RC»,»LD»,»CD»,»RD». По умолчанию «CC»
* **inBox** (*pyscreeze.Box*) – Экземпляр класса прямоугольной области Box
* **inDXInt** (*int**, **опциональный*) – Смещение левой верхней координаты по оси X в пикселях (горизонтальная ось).
* **inDYInt** (*int**, **опциональный*) – Смещение левой верхней координаты по оси Y в пикселях (вертикальная ось).
* **inPointRuleStr** (*str**, **опциональный*) – Символьное указание точки (подробнее см. выше), относительно которой выполнить изменение прямоугольной области. Допустимые значения: «CC» (по умолчанию), «LU», «LD», «RD», «RU»
* **inImgPathStr** (*str**, **относительный или абсолютный*) – Путь к изображению, которое требуется искать на экране
* **inBoxIndexInt** (*int**, **опционально*) – Индекс прямоугольной области, по которой выполнить клик (если обнаружено несколько областей Box), По умолчанию 0
* **inPointRuleStr** (*str**, **опциональный*) – Правило идентификации точки на прямоугольной области (правила формирования см. выше). Варианты: «LU»,»CU»,»RU»,»LC»,»CC»,»RC»,»LD»,»CD»,»RD». По умолчанию «CC»
* **inIsGrayModeBool** (*bool**, **опционально*) – True - выполнить поиск изображения в режиме серых оттенков (ускоряет производительность, если допускается искажение цвета). По умолчанию False
* **inImgPathStr** (*str**, **относительный или абсолютный*) – Путь к изображению, которое требуется искать на экране
* **inIsGrayModeBool** (*bool**, **опционально*) – True - выполнить поиск изображения в режиме серых оттенков (ускоряет производительность, если допускается искажение цвета). По умолчанию False
* **inImgPathStr** (*str**, **относительный или абсолютный*) – Путь к изображению, которое требуется искать на экране
* **inIsGrayModeBool** (*bool**, **опционально*) – True - выполнить поиск изображения в режиме серых оттенков (ускоряет производительность, если допускается искажение цвета). По умолчанию False
L+,W+:Ожидать появление изображения на протяжении inWaitSecFloat секунд. Проверять с периодичностью inWaitIntervalSecFloat. Вернуть список прямоугольных областей, которые удовлетворяют условию
!ВНИМАНИЕ! Для использования параметра точности inConfidenceFloat необходим пакет Python opencv-python (python -m pip install opencv-python)
* **inIsGrayModeBool** (*bool**, **опционально*) – True - выполнить поиск изображения в режиме серых оттенков (ускоряет производительность, если допускается искажение цвета). По умолчанию False
* **inIsGrayModeBool** (*bool**, **опционально*) – True - выполнить поиск изображения в режиме серых оттенков (ускоряет производительность, если допускается искажение цвета). По умолчанию False
Screen.PointClick(lPoint) #Выполнить нажатие левой клавиши мыши
```
* **Параметры**
* **inPoint** (*pyscreeze.Point**, **обязательный*) – Точка на экране, по которой выполнить нажатие мыши
* **inClickCountInt** (*int**, **опциональный*) – Количество нажатий (вниз и вверх) кнопкой мыши, По умолчанию 1
* **inIntervalSecFloat** (*float**, **опциональный*) – Интервал ожидания в секундах между нажатиями, По умолчанию 0.0
* **inButtonStr** (*str**, **опциональный*) – Номер кнопки, которую требуется нажать. Возможные варианты: „left“, „middle“, „right“ или 1, 2, 3. В остальных случаях инициирует исключение ValueError. По умолчанию „left“
* **inMoveDurationSecFloat** (*float**, **опциональный*) – Время перемещения указателя мыши, По умолчанию 0.0 (моментальное перемещение)
* **inWaitAfterSecFloat** (*float**, **опциональный*) – Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
Screen.PointClickDouble(lPoint) #Выполнить двойное нажатие левой клавиши мыши
```
* **Параметры**
* **inPoint** (*pyscreeze.Point**, **обязательный*) – Точка на экране, по которой выполнить нажатие мыши
* **inWaitAfterSecFloat** (*float**, **опциональный*) – Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
L+,W+:Переместить указатель по координатам inPoint, после чего нажать (вниз) клавишу мыши и не отпускать до выполнения соответсвующей команды (см. Up).
* **inPoint** (*pyscreeze.Point**, **обязательный*) – Точка на экране, по которой выполнить нажатие мыши
* **inButtonStr** (*str**, **опциональный*) – Номер кнопки, которую требуется нажать. Возможные варианты: „left“, „middle“, „right“ или 1, 2, 3. В остальных случаях инициирует исключение ValueError. По умолчанию „left“
* **inWaitAfterSecFloat** (*float**, **опциональный*) – Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
```
# Screen: Взаимодействие с мышью объектами экрана
from pyOpenRPA.Robot import Screen
lPoint = Screen.PointCreate(100,150)
Screen.PointMoveTo(inXInt=100, inYInt=200)
```
* **Параметры**
* **inPoint** (*pyscreeze.Point**, **обязательный*) – Точка на экране, по которой выполнить нажатие мыши
* **inWaitAfterSecFloat** (*float**, **опциональный*) – Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
* **inPoint** (*pyscreeze.Point**, **обязательный*) – Точка на экране, по которой выполнить нажатие мыши
* **inButtonStr** (*str**, **опциональный*) – Номер кнопки, которую требуется поднять. Возможные варианты: „left“, „middle“, „right“ или 1, 2, 3. В остальных случаях инициирует исключение ValueError. По умолчанию „left“
* **inWaitAfterSecFloat** (*float**, **опциональный*) – Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)