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

513
Visualizações
Cómo obtener texto de una columna específica de una tabla en Playwright

Estoy usando Playwright para las pruebas de e2e. La declaración del problema que tengo es que quiero obtener el contenido de texto de todas las filas de una columna específica de una tabla. La tabla en cuestión es como las que se muestran aquí: https://ant.design/components/table/

Un HTML similar -> HTML de la tabla

(aunque cada td dentro del tr tiene una clase diferente en mi caso).

Solo digamos si quiero obtener toda la edad de la columna Edad en la tabla.

Probé un par de enfoques, pero todos terminaron con Promesa rechazada o Promesa en espera y la prueba se agotó.

P.ej -

 let table_row = page.locator("tbody.ant-table-tbody tr"); // get the tr tags let text = table_row.locator('td:nth-child(2)'); const arrayoftext = await page.$$eval(text, links=> links.map(link.textContent) )

He hecho una pregunta similar relacionada con Puppeteer aquí , pero estoy tratando de abordar esto de una manera más dramatúrgica usando page.locator si es posible.

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

const textsFromThirdColumn = []; const rowCount = await page.locator('.ant-table-tbody').locator('tr').count(); for (let i = 0; i < rowCount; i++) { textsFromThirdColumn.push(await page.locator('.ant-table-tbody').locator('tr').nth(i).locator('td').nth(2).innerText()) }
about 4 years ago · Juan Pablo Isaza Relatório

0

Con Playwright 1.21 se introdujo un nuevo método llamado :scope . Puedes leer más sobre esto aquí . Usando esto, puede optimizar su código de esta manera:

 const row = page.locator('tbody.ant-table-tbody tr[data-row-key="3"]') const rowTexts = await row.locator(':scope').allInnerTexts() await rowTexts.forEach((text) => { console.log(text) })
about 4 years ago · Juan Pablo Isaza 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