Кукловод Как вызвать 2-го дива из того же класса - PullRequest
1 голос
/ 23 апреля 2020

Скажем так, на сайте есть два div с одинаковым классом / идентификатором. Как я могу вызвать 2-й класс с тем же именем / идентификатором?

await page.type('.sameclass', "DifferentSpot1")
await page.type('.sameclass', "DifferentSpot2")

В javascript селектор запросов будет выглядеть следующим образом.

document.querySelectorAll('.sameclass')[0]
document.querySelectorAll('.sameclass')[1]

Это то, что он выглядит как в селекторе запросов.

document.querySelectorAll('.sameclass:nth-child(1)')[0]
document.querySelectorAll('.sameclass:nth-child(1)')[1]

1 Ответ

0 голосов
/ 23 апреля 2020

Это должно работать:

Получить массив имен селекторов через $ eval и использовать их для поиска элементов, где вы будете выполнять тип

const classValues = await page.$eval('body', body => {
    return Array.from(body.querySelectorAll('.sameclass'))  
 });

await page.type(classValues[0], "DifferentSpot1")
await page.type(classValues[1], "DifferentSpot2")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...