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

249
Visualizações
Selenium--driver.execute_script() no funcionará

Ejecuto un javascript con driver.execute_script pero NADA ocurre cuando lo hago, el sistema simplemente va a la siguiente línea de código de python

¿Pensamientos? webscraping en la página web: usando JavaScript en la consola para extraer datos. El jScript funciona maravillosamente cuando lo pongo en la consola web.

JavasCRIPT:

 let email = ''; let contacts = document.querySelectorAll('div.contact-section'); for (let i = 0; i < contacts.length; i++) { if (contacts[i].getAttribute('automation-id') === 'contact-true-owner') { ele = contacts[i] } } let links = ele.querySelectorAll('address > a') let last = links.length - 1; email = links[last].innerText; console.log(email);
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Agregar retorno al script

Este script en realidad no hace nada que puedas detectar a partir del código Python. La última línea no devuelve nada..

Intente agregar la declaración de devolución:

 ... email = links[last].innerText; console.log(email); return email

Y también, parece que el trabajo que intenta hacer con driver.execute_script es solo ubicar el elemento y llamar a .innerText . Supongo que podría resolverse proporcionando la consulta xpath correcta (tal vez el selector css también esté bien, pero xpath debería funcionar exactamente).

Quiero decir que hay una forma más directa de resolver este problema, no solo delegarlo a for loop en driver.execute_script . Pero está en su elección.

Podré ayudarlo con xpath si comparte la fuente de la página. Pero es opcional.

con xpath

La idea es realizar 2 pasos:

1 Encuentra el elemento por xpath (otro selector).

2 Páselo a executeScript como argumento.

 element = driver.find_element_by_xpath("//div[contains(@class, 'contact-section')][@automation-id='contact-true-owner']//address/a[last()]") text = driver.execute_script('return arguments[0].innerText;', element)
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