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.

¿Cómo puedo extraer datos de un gráfico de highcharts en Python?

Estoy intentando escribir un scraper web con selenium en python para un sitio web utilizado para buscar estadísticas de escuelas de medicina. proporciona un ejemplo. He logrado extraer la mayor parte de los datos con éxito, pero algunos datos, como la demografía de los estudiantes matriculados (los cuales deberían poder visualizarse sin una suscripción), se encuentran en gráficos de barras de highcharts. Esto está resultando ser muy difícil, ya que solo había extraído datos de sitios web estáticos antes.

Inicialmente intenté buscar el texto que se muestra al pasar el cursor sobre cada barra mediante el selector CSS, pero un par de caracteres al principio del selector cambian cada vez que accedo al sitio, así que no puedo hacerlo de esa manera. Intenté buscar formas de buscar un elemento por selector CSS con comodines en lugar de esas letras, pero todo lo que encontré tenía explicaciones que eran demasiado avanzadas para que yo las entendiera. También intenté buscar cómo extraer datos de highcharts en general, pero nuevamente no pude entender lo que leí.

Cualquier ayuda que puedan brindar (o una explicación si no es posible) sería muy apreciada. ¡Gracias!

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Como experto en TI especializado en python, selenium y web-scraping, entiendo los desafíos a los que te enfrentas al intentar extraer datos de gráficos de barras de highcharts en un sitio web de estadísticas de una escuela médica. El enfoque que utilizaste para extraer datos de sitios web estáticos no funcionará en este caso, ya que los datos no están disponibles de forma inmediata en el código fuente HTML.

    Un enfoque para este problema es utilizar una combinación de Selenium y la API de Highcharts para obtener los datos de los gráficos. Highcharts proporciona una API que se puede utilizar para acceder a los datos del gráfico e interactuar con los elementos del mismo. Con este enfoque, puedes automatizar el proceso de navegación hasta el gráfico, obtener los datos y guardarlos en un archivo.

    Otro enfoque es utilizar librerías de reconocimiento de imágenes como OpenCV o PyAutoGUI para localizar los elementos del gráfico y extraer los datos. Este enfoque implica tomar una captura de pantalla del área del gráfico y procesarla para identificar los elementos del gráfico y extraer los datos.

    Ambos enfoques requieren habilidades y conocimientos adicionales más allá de Python y Selenium, pero son soluciones factibles para el problema al que te enfrentas. Con un poco de investigación y experimentación, deberías ser capaz de implementarlos con éxito.

    En resumen, extraer datos de gráficos de barras de highcharts es desafiante pero no imposible con el enfoque correcto. Puedes utilizar una combinación de Selenium y la API de Highcharts, o librerías de reconocimiento de imágenes como OpenCV o PyAutoGUI para obtener los datos. ¡Buena suerte con tu proyecto de web scraping!

Comments are closed.