Операция перетаскивания мыши была объяснена в предыдущей статье. Сегодня брат Хун подробно представит и объяснит другие операции, а затем отдельно представит и подробно объяснит некоторые из наиболее распространенных и важных операций.
Официальное введение в операции с мышьюAPIАдрес документа:https://playwright.dev/docs/api/class-mouse
Операции мыши вызываются на основе объекта страницы. Обычно используемые операции мыши включают щелчок, двойной щелчок, колесо прокрутки, удержание, перемещение и отпускание.
1.использоватьpage.mouse
рисование Квадрат 100х100. Синтаксис следующий:
# Using ‘page.mouse’ to trace a 100x100 square.
# Подведите указатель мыши к координате (0,0).
await page.mouse.move(0, 0);
# нажать мышью
await page.mouse.down();
# Переместите вертикальную координату мыши вниз на 100 пикселей.
await page.mouse.move(0, 100);
# Переместите горизонтальную координату мыши на 100 пикселей вправо.
await page.mouse.move(100, 100);
# Переместите вертикальную координату мыши вверх на 100 пикселей.
await page.mouse.move(100, 0);
# Переместите вертикальную координату мыши на 100 пикселей влево.
await page.mouse.move(0, 0);
# Отпустите мышь
await page.mouse.up();
2. Траектория движения мыши показана на рисунке ниже:
Давайте воспользуемся официальным примером выше, чтобы открыть онлайн-версию.рисованиекартина:https://draw.yunser.com/,Покажите это своим друзьям или детям, используя квадрат, как показано на официальном сайте.
# coding=utf-8🔥
# 1. Сначала установите кодировку UTF-8, которая поддерживает китайский и английский языки, как указано выше, обычно они располагаются в первой строке.
# 2. Примечания: включая время создания записи, автора и название проекта.
'''
Created on 2024-02-12
@author: Пекин-Хонге
Публичный аккаунт: Пекин Хунге
Project: Введение в серию «Последний выпуск» — Автоматический тест Python + драматурга — 44 — Работа с мышью — Часть 1
'''
# 3. Импортировать модули
from playwright.sync_api import Playwright, sync_playwright, expect
def run(playwright: Playwright) -> None:
def mouse_operate():
# https://draw.yunser.com/
page.mouse.move(350, 200)
page.mouse.down()
page.mouse.move(350, 300)
page.mouse.move(450, 300)
page.mouse.move(450, 200)
page.mouse.move(350, 200)
page.mouse.up()
browser = playwright.chromium.launch(headless=False)
context = browser.new_context()
page = context.new_page()
page.goto("https://draw.yunser.com/")
page.wait_for_timeout(1000)
mouse_operate()
page.wait_for_timeout(1000)
# page.pause()
context.close()
browser.close()
with sync_playwright() as playwright:
run(playwright)
1. Запустите код, щелкните правой кнопкой мыши «Выполнить тест», и вывод консоли будет таким, как показано ниже:
2. Действия браузера на компьютере после запуска кода. Как показано ниже:
Щелчок мышью Щелчок — это ярлык для mouse.move(), mouse.down(), mouse.up(). Можно просто понять, что эти три операции представляют собой набор комбинированных ударов. Синтаксис следующий:
def click(
self,
x: float,
y: float,
*,
delay: typing.Optional[float] = None,
button: typing.Optional[Literal["left", "middle", "right"]] = None,
click_count: typing.Optional[int] = None
) -> None:
"""Mouse.click
Shortcut for `mouse.move()`, `mouse.down()`, `mouse.up()`.
Parameters
----------
x : float
y : float
delay : Union[float, None]
Time to wait between `mousedown` and `mouseup` in milliseconds. Defaults to 0.
button : Union["left", "middle", "right", None]
Defaults to `left`.
click_count : Union[int, None]
defaults to 1. See [UIEvent.detail].
"""
параметр | тип | Определение |
---|---|---|
x | float | горизонтальная координата x |
y | float | продольная координата y |
button | list"left", "middle", "right" | Левый, средний и правый являются необязательными, что соответствует положению выбранного элемента: «левый», «средний», «правый», параметр по умолчанию — левый. |
click_count | int | Клики,Значение по умолчанию — 1.,Значение ссылки:https://developer.mozilla.org/en-US/docs/Web/API/UIEvent/detail |
delay | float | Время между нажатием кнопки и ее отпусканием (единица измерения: миллисекунды), по умолчанию — 0 миллисекунд. |
mouse.click(x, y)
mouse.click(x, y, **kwargs)
Двойной щелчок мышью — это ярлык для mouse.move(), mouse.down(), mouse.up(), mouse.down() и mouse.up().
параметр | тип | Определение |
---|---|---|
x | float | горизонтальная координата x |
y | float | продольная координата y |
button | list"left", "middle", "right" | Левый, средний и правый являются необязательными, что соответствует положению выбранного элемента: «левый», «средний», «правый», параметр по умолчанию — левый. |
click_count | int | Клики,Значение по умолчанию — 1.,Значение ссылки:https://developer.mozilla.org/en-US/docs/Web/API/UIEvent/detail |
delay | float | Время между нажатием кнопки и ее отпусканием (единица измерения: миллисекунды), по умолчанию — 0 миллисекунд. |
mouse.dbclick(x, y)
mouse.dbclick(x, y, **kwargs)
Сегодня я в основном объясняю некоторые методы и основные примеры того, как драматург имитирует действия мыши. Это тоже очень просто. Хорошо, сегодня еще не очень рано, поэтому брат Хун объяснит и поделится здесь. Спасибо за ваше терпение в чтении! ! !