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

313
Visualizações
¿Cómo obtener todos los hijos de un elemento en python usando selenio?

¿Cómo puedo convertir este JavaScript en Python para obtener todos los elementos secundarios del padre?

Este script obtiene todos los elementos del sitio google.com a través de la consola

 e = document.getElementsByTagName('body')[0].children for (let i = 0; i < e.length;i++){ console.log(e[i].tagName) }

En python traté de hacer esto, pero no puedo

 import time import requests import pandas as pd from bs4 import BeautifulSoup from selenium import webdriver from selenium.webdriver.firefox import options from selenium.webdriver.firefox.options import Options option = Options() option.headless = True driver = webdriver.Firefox(executable_path=r'C:\geck\geckodriver.exe') driver.get('https://www.google.com.br/') body = driver.find_element_by_tag_name('body') childrens = body.childrens for i in childrens: print(i.tagName) driver.quit()

Comandos utilizados para instalar paquetes:

 pip install pandas pip install bs4 pip install selenium pip install requests

¿Cómo puedo obtener los nombres de los elementos de una etiqueta de cuerpo en python?

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

0

Para convertir este JavaScript en Python para obtener todos los elementos secundarios del padre

 e = document.getElementsByTagName('body')[0].children for (let i = 0; i < e.length;i++){ console.log(e[i].tagName) }

de una manera simple y crujiente, solo necesita pasar el JavaScript dentro de execute_script() de la siguiente manera:

 driver.get("https://www.google.com.br/") driver.execute_script(""" e = document.getElementsByTagName('body')[0].children for (let i = 0; i < e.length;i++){ console.log(e[i].tagName) } """)

Instantánea de la consola:

JavaScript

about 4 years ago · Juan Pablo Isaza Relatório

0

Puede usar body.find_elements_by_xpath("./child::*") para obtener todos los elementos secundarios en el cuerpo como objeto WebElement y luego obtener su nombre de etiqueta accediendo al atributo tag_name

 import time import requests import pandas as pd from bs4 import BeautifulSoup from selenium import webdriver from selenium.webdriver.firefox import options from selenium.webdriver.firefox.options import Options option = Options() option.headless = True driver = webdriver.Firefox(executable_path=r'C:\geck\geckodriver.exe') driver.get('https://www.google.com.br/') body = driver.find_element_by_tag_name('body') childrens = body.find_elements_by_xpath("./child::*") for i in childrens: print(i.tag_name) driver.quit()
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