Чтобы сэкономить трафик и ресурсы и повысить эффективность загрузки, некоторые веб-сайты используют динамическую загрузку (ленивую загрузку), то есть при перетаскивании полосы прокрутки в правой части страницы содержимое ниже веб-страницы загружается автоматически. и он не загрузится без перетаскивания. Или используйте колесо мыши.
Wheel имитирует прокрутку мыши, отправляя событие колеса. (Если событие колеса не обработано, это может вызвать прокрутку. Этот метод не будет ждать завершения прокрутки перед возвратом.) Синтаксис следующий:
def wheel(self, delta_x: float, delta_y: float) -> None:
"""Mouse.wheel
Dispatches a `wheel` event.
**NOTE** Wheel events may cause scrolling if they are not handled, and this method does not wait for the scrolling
to finish before returning.
Parameters
----------
delta_x : float
Pixels to scroll horizontally.
delta_y : float
Pixels to scroll vertically.
"""
параметр | тип | Определение |
---|---|---|
delta_x | float | Пиксели для горизонтальной прокрутки |
delta_y | float | Пиксели для вертикальной прокрутки |
mouse.wheel(delta_x, delta_y)
Брат Хун будет использовать веб-сайт «Учебное пособие для новичков», чтобы объяснить и продемонстрировать: загрузка веб-контента во время прокрутки.
# coding=utf-8🔥
# 1. Сначала установите кодировку UTF-8, которая поддерживает китайский и английский языки, как указано выше, обычно они располагаются в первой строке.
# 2. Примечания: включая время создания записи, автора и название проекта.
'''
Created on 2023-12-16
@author: Пекин-Хонге
Публичный аккаунт: Пекин Хунге
Project: Знакомство с серией «Последний выпуск» — Python+автоматизация драматурга тест-45-управление колесиком мыши
'''
# 3. Импортировать модули
from playwright.sync_api import Playwright, sync_playwright, expect
def run(playwright: Playwright) -> None:
browser = playwright.chromium.launch(headless=False)
context = browser.new_context()
page = context.new_page()
page.goto("https://www.runoob.com/")
page.wait_for_timeout(1000)
for i in range(50):
page.mouse.wheel(0, 100)
page.wait_for_timeout(500)
#page.pause()
context.close()
browser.close()
with sync_playwright() as playwright:
run(playwright)
1. Запустите код, щелкните правой кнопкой мыши «Выполнить тест», и вывод консоли будет таким, как показано ниже:
2. Действия браузера на компьютере после запуска кода. Как показано ниже:
Хорошо, сегодня уже поздно, поэтому брат Хун объяснит и поделится здесь. Спасибо за ваше терпение при чтении, надеюсь, это будет вам полезно.