Нажатие динамической кнопки с Playwright: как идентифицировать по имени класса

Как я могу использовать Playwright, чтобы щелкнуть кнопку на изображении, идентифицированную по имени класса? Важно отметить, что название кнопки меняется ежедневно, начиная с «Собери 10 конфет» и увеличиваясь на *2 каждый день, а затем сбрасывается каждую неделю.

Веб-скраппинг с помощью PHP: Пошаговое руководство
Веб-скраппинг с помощью PHP: Пошаговое руководство
Веб-скрейпинг становится все более популярным и сегодня является одной из актуальных тем в IT-сообществе. В результате несколько библиотек помогают...
Инструменты для веб-скрапинга с открытым исходным кодом: Python Developer Toolkit
Инструменты для веб-скрапинга с открытым исходным кодом: Python Developer Toolkit
Веб-скрейпинг, как мы все знаем, это дисциплина, которая развивается с течением времени. Появляются все более сложные средства борьбы с ботами, а...
Скраппинг поиска Apple App Store с помощью Python
Скраппинг поиска Apple App Store с помощью Python
📌Примечание: В этой статье я покажу вам, как скрапировать поиск Apple App Store и получить точно такой же результат, как на Apple iMac, потому что...
0
0
53
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ваш локатор для этого класса может быть таким:

.collect-candy-button

так:

page.locator(`.collect-candy-button`).click()

Будет ли этот синтаксис работать для Python? Это дает мне ошибку подсветки синтаксиса

John Smith 12.01.2023 16:52

Может быть, ему не нравятся обратные галочки ` . Попробуйте заменить на апострофы: page.locator('.collect-candy-button').click()

AJG 12.01.2023 17:10

Все еще не работал для меня. Я думаю, это может сработать для тех, кто использует Node.js.

John Smith 12.01.2023 22:29
Ответ принят как подходящий

Это решение, которое сработало для меня:

page.query_selector("button[data-action='click->points#claimCandy'][data-target='points.button']").click()

Другие вопросы по теме