es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Python Selenium: ¿Cómo imprimo los valores de un sitio web en un archivo de texto?

Estoy tratando de escribir un script que obtendrá los siguientes 6 valores del sitio web tulsaspca.org y los imprimirá en un archivo .txt.

La salida final debería ser:

ninguno
905
4896
7105
23194
1004
42000

HTML para “Animals Placed”

905

Animales Colocados

Escribí el siguiente código, pero parece que no está funcionando.

para elemento en driver.find_elements_by_class_name(‘Animals Colocados’):
print(elemento.texto)

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Para obtener los valores del sitio web tulsaspca.org e imprimirlos en un archivo .txt, se puede usar Selenium con Python. Aquí hay un ejemplo de fragmento de código para lograr esto:

    from selenium import webdriver
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.support import expected_conditions as EC
    
    # Configurar webdriver e ir al sitio web
    driver = webdriver.Chrome()
    driver.get('https://tulsaspca.org/')
    
    # Esperar a que los valores aparezcan en la página
    wait = WebDriverWait(driver, 10)
    values = wait.until(EC.presence_of_all_elements_located((By.CLASS_NAME, 'number')))
    
    # Extraer el texto de los valores y guardarlos en un archivo
    with open('output.txt', 'w') as f:
        for value in values:
            f.write(value.text + '\n')
    

    Este código primero abrirá el sitio web tulsaspca.org y esperará a que aparezcan los valores. Luego extraerá el texto de cada uno de los valores y los guardará en un archivo llamado “output.txt” en el mismo directorio que el script. La salida estará en el formato especificado en el enunciado.

    La razón por la que su código original no funcionó es porque estaba intentando encontrar elementos por su nombre de clase, pero el nombre de la clase no era único y no coincidía con el nombre de clase real en HTML. El uso del método presence_of_all_elements_located del módulo expected_conditions asegura que los valores estén realmente en la página antes de intentar extraerlos.

Comments are closed.