Foros Python

Versión completa: Leer web con JavaScript
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Buenas tardes,
Me pidieron leer la web de este tipo https://eth.crazypool.org/#/account/0x7c...98a8665551
Pero no estoy pudiendo leer el html y traerme los datos. Ej "Reported"
Alguien me puede dar una mano.
Saludos
Hola, bienvenido.

¿Qué código estás ejecutando para intentar traer los datos?

Saludos
El dato no esta por que esa parte de la web es creada dinamicante por JavaScript. O sea simplemente leyendo el source page no lo vas a ver.

Un truco que puedes hacer es utilizando la libreria Selenium que corre to browser y puedes entonces obtener el valor (en este caso estoy usando my Firefox browser):



Código:
from selenium import webdriver
from selenium.webdriver.common.by import By
import sys
import time
from selenium.webdriver.firefox.options import Options as FirefoxOptions

# selenium documentation ...

# pip install selenium

# download the driver that correspond to your browser ...

# print executable paths ...
print(sys.executable)

options = FirefoxOptions()
options.headless = True
driver = webdriver.Firefox(executable_path='./drivers/geckodriver', options=options)

try:
    driver.get("https://eth.crazypool.org/#/account/0x732c1d389edbc8e8c9c542dcd159d837a88c1daf")

    # wait for javascript to finish rendering the page ...
    time.sleep(5)

    assert "ETH Mining" in driver.title

    elements = driver.find_elements(By.CLASS_NAME, "mb-0")

    print_next = False

    for element in elements:
        if print_next:
            print_next = False
            print("==> " + element.text)
        if 'Hashrate' in element.text:
            print_next = True
            print("==> " + element.text)

finally:
    driver.close()