Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

126
Visualizações
¿Cómo obtener una matriz de elementos (botones) basados en aria-label en Playwright con locator.evaluateAll()?

Estoy tratando de obtener una matriz de elementos dom de uno de los dos valores de etiqueta aria. Estoy tratando de hacer esto con el método locator.evaluateAll .

Actualmente, esto es todo lo que he conseguido; Estoy tratando de tomar todos los botones en mi DOM y crear una matriz de aquellos que poseen un atributo de etiqueta aria específico:

 const elements = this.page.locator('button'); const allSigButtons = await elements.evaluateAll( (button) => `${button}[aria-label='Sign']` || `${button}[aria-label='Initial']` );

Cuando imprimo mi matriz allSigButtons en la consola, obtengo:

 [object HTMLButtonElement],[object HTMLButtonElement],[object HTMLButtonElement],[object HTMLButtonElement],[object HTMLButtonElement],[object HTMLButtonElement],[object HTMLButtonElement],[object HTMLButtonElement],[object HTMLButtonElement],[object HTMLButtonElement],[object HTMLButtonElement],[object HTMLButtonElement],[object HTMLButtonElement],[object HTMLButtonElement][aria-label='Sign']

Claramente estoy haciendo algo mal!

about 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Creo que está buscandoselectores de CSS delimitados por comas (OR lógico) :

 const playwright = require("playwright"); const html = ` <body> <button aria-label="Sign">foo</button> <button aria-label="Signy">NO</button> <button aria-label="Initial">bar</button> <button aria-label="Initial">baz</button> <button aria-label="Initia">NOT ME</button> </body> `; let browser; (async () => { browser = await playwright.chromium.launch({headless: true}); const page = await browser.newPage(); await page.setContent(html); const sel = "button[aria-label='Sign'], button[aria-label='Initial']"; const btns = await page.locator(sel); console.log(await btns.allTextContents()); // => [ 'foo', 'bar', 'baz' ] })() .catch(err => console.error(err)) .finally(() => browser?.close()) ;
about 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda