vademecum_enfermedades - MutakamwoyoCloud/MCloud GitHub Wiki
3.3.3.5.3 Módulo Vademecum enfermedades
El siguiente módulo es el encargado de realizar la extracción de datos de las enfermedades registradas en Vademecum. Debido al escaso ancho de banda sólo se descargará una categoría de enfermedades de Vademecum cada vez que se invoque a la función, de esta manera se irán descargando las diferentes categorías periódicamente. Para hacer esto hemos recurrido a la clasificación alfabética que utiliza Vademecum.
El módulo consta de una función principal llamada enfermedades, que se encarga de toda la carga principal de trabajo y de llamar a las funciones auxiliares necesarias. Esta función obtiene la letra que le corresponda en dicha ejecución, para ello recurre al archivo config.txt. A continuación, obtiene la informacíón de las enfermedades de la página de Vademecum. Y termina con la escritura de esta información en su archivo correspondiente en formato JSON.
Funciones auxiliares
-
getLetter(): Función que obtiene la letra correspondiente del archivo config.txt, y actualiza ese valor para la siguiente ejecución.
-
htmlToFile(entradas): Función que recibe las diferentes paginas de las que obtener la información de las enfermedades, pasa esa información a JSON y la escribe en su archivo correspondiente.
import goslate
import requests
from bs4 import BeautifulSoup
ABECEDARIO='abcdefghijkmnopqrstuvwxyz'
url = "http://www.vademecum.es"
entrada = "/enfermedades-"
def enfermedades():
num = getLetter()
req = requests.get(url+entrada+ABECEDARIO[num]+"_1")
html = BeautifulSoup(req.text, "html.parser")
ref = html.find('ul', {'class': 'no-bullet'})
entradas = ref.find_all('a')
htmlToFile(entradas)
Librerías externas
- Goslate