Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

346
Vistas
¿Cómo seleccionar una barra de búsqueda sin un `nombre`?

Me gustaría realizar una búsqueda en la barra de búsqueda de abajo usando Titiritero. Sin embargo, no puedo ver nada que pueda usar para identificar la barra de búsqueda.

Si lo hago:

 await page.type('[id="i0e792821-542f-11ec-9366-f3e8261f9ecb"]', 'test="1 2" and test2="3 4"'); await page.type('["data-test-subj"="queryInput"]', 'test="1 2" and test2="3 4"'); await page.type('[class=".euiTextArea.euiTextArea--resizeVertical.euiTextArea--fullWidth.kbnQueryBar__textarea.kbnQueryBar__textarea--hasPrepend.kbnQueryBar__textarea--hasAppend"]', 'test="1 2" and test2="3 4"'); await page.type("*[role='search']", 'test="1 2" and test2="3 4"');

entonces los 3 primeros dan:

 Error: No node found for selector:

y el último no da ningún error.

Si lo hago:

 await page.waitForSelector('i0e792821-542f-11ec-9366-f3e8261f9ecb'); await page.focus('i0e792821-542f-11ec-9366-f3e8261f9ecb'); await page.focus('i0e792821-542f-11ec-9366-f3e8261f9ecb', '1234', {delay: 1500});

Yo obtengo:

 TimeoutError: waiting for selector `i0e792821-542f-11ec-9366-f3e8261f9ecb` failed: timeout 30000ms exceeded

¿Qué puedo usar para completar el texto en la barra de búsqueda?

ingrese la descripción de la imagen aquí ingrese la descripción de la imagen aquí

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Si desea seguir con su segunda metodología, debe usar el selector de CSS correcto anteponiendo un # para indicar que el valor i0e792821-542f-11ec-9366-f3e8261f9ecb es un valor de id y cambiar la última línea a la page.type() en lugar de page.focus() (que no toma más de un argumento ni implementa ningún tipo de funcionalidad de escritura):

 await page.waitForSelector('#i0e792821-542f-11ec-9366-f3e8261f9ecb'); await page.focus('#i0e792821-542f-11ec-9366-f3e8261f9ecb'); await page.type('#i0e792821-542f-11ec-9366-f3e8261f9ecb', '1234', {delay: 1500});

Sin embargo, con los selectores que no son legibles por súper humanos, generalmente debe asumir que se generan dinámicamente en algún lugar durante la compilación o el tiempo de ejecución y cambiarán con el tiempo; cada vez que cambie, su secuencia de comandos se romperá y tendrá que re- trabaje su código para actualizar el selector. En su lugar, use un selector que sea un poco más legible para los humanos y, por lo tanto, es más probable que permanezca constante:

 await page.waitForSelector('[data-test-subj="queryInput"]'); await page.focus('[data-test-subj="queryInput"]'); await page.type('[data-test-subj="queryInput"]', '1234', {delay: 1500});
about 4 years ago · Juan Pablo Isaza Denunciar

0

Realmente no conozco Titiritero (o la sintaxis), pero me imagino algo como; div[role="search"].textarea o div[role="search"] > textarea

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda