<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://curlybraces.be/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Arthurlafontaine</id>
	<title>{} - Contributions de l’utilisateur [fr]</title>
	<link rel="self" type="application/atom+xml" href="https://curlybraces.be/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Arthurlafontaine"/>
	<link rel="alternate" type="text/html" href="https://curlybraces.be/wiki/Sp%C3%A9cial:Contributions/Arthurlafontaine"/>
	<updated>2026-05-11T00:09:52Z</updated>
	<subtitle>Contributions de l’utilisateur</subtitle>
	<generator>MediaWiki 1.35.10</generator>
	<entry>
		<id>https://curlybraces.be/wiki/index.php?title=Utilisateur:Arthurlafontaine&amp;diff=4936</id>
		<title>Utilisateur:Arthurlafontaine</title>
		<link rel="alternate" type="text/html" href="https://curlybraces.be/wiki/index.php?title=Utilisateur:Arthurlafontaine&amp;diff=4936"/>
		<updated>2021-04-25T09:41:20Z</updated>

		<summary type="html">&lt;p&gt;Arthurlafontaine : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
le but du projet est de construire une animation du déplacement du virus covid 19 sur une carte de Belgique depuis le début de la contamination et de la questionner pour en trouver la possible souche du virus en Belgique. &lt;br /&gt;
&lt;br /&gt;
Pour ce faire je me base sur la data base de l&amp;#039;Institut scientifique de santé publique fédéral belge.[https://epistat.wiv-isp.be/covid/]&lt;br /&gt;
&lt;br /&gt;
pour Python j&amp;#039;utilise les bibliothèques Request et Alchemy. &lt;br /&gt;
&lt;br /&gt;
Pour mon plan j&amp;#039;utilise deux sources d&amp;#039;information:&lt;br /&gt;
sciensano: &lt;br /&gt;
-les cas confirmés par date, age , sexe et province&lt;br /&gt;
-les cas confirmés par date et municipalité&lt;br /&gt;
&lt;br /&gt;
Rapidapi:&lt;br /&gt;
-pour la géolocalisation des villes &lt;br /&gt;
[[Fichier:plan_arthur_2.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== code == &lt;br /&gt;
&lt;br /&gt;
Main&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
#!/usr/bin/env python3&lt;br /&gt;
&lt;br /&gt;
# Notre librairie pour la Préparation de la Base de donnée&lt;br /&gt;
from database import prepareDb&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# Récupération du contexte de la Base de donnée&lt;br /&gt;
session = prepareDb()&lt;br /&gt;
&lt;br /&gt;
# Creation API &lt;br /&gt;
#&lt;br /&gt;
# - interrogation DB ( en cours de conception )&lt;br /&gt;
# - delivre code javascript pour la représentation des données ( en cour de conception )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Librairie préparation des données&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
# Ajout outils pour les requêtes http&lt;br /&gt;
import requests&lt;br /&gt;
&lt;br /&gt;
# Ajout outils de manipulation du format json&lt;br /&gt;
import json&lt;br /&gt;
&lt;br /&gt;
# Ajout Outils de manipulation d&amp;#039;objet de type Date/Time&lt;br /&gt;
from datetime import datetime, timedelta&lt;br /&gt;
&lt;br /&gt;
# Ajout outils de manipulation de la base de donnée&lt;br /&gt;
import sqlalchemy&lt;br /&gt;
from sqlalchemy import create_engine, and_, or_&lt;br /&gt;
from sqlalchemy.ext.declarative import declarative_base&lt;br /&gt;
from sqlalchemy import Column, Integer, String, Date&lt;br /&gt;
from sqlalchemy.orm import sessionmaker&lt;br /&gt;
&lt;br /&gt;
# Ajout outils expressions régulières &lt;br /&gt;
import re&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
def prepareDb():&lt;br /&gt;
   &lt;br /&gt;
    # mise en place du moteur de base de donnée ( fichier covid.sqlite, encodage utf-8 )&lt;br /&gt;
    engine = create_engine(&amp;#039;sqlite:///covid.sqlite&amp;#039;, echo=False,encoding=&amp;#039;utf-8&amp;#039;)&lt;br /&gt;
    Session = sessionmaker(bind=engine)&lt;br /&gt;
   &lt;br /&gt;
    # Declaration de notre object de base do donnée &lt;br /&gt;
    CovidDb = declarative_base()&lt;br /&gt;
    &lt;br /&gt;
    # Déclaration du schema de la table COVID19BE_CASES_AGESEX &lt;br /&gt;
    class COVID19BE_CASES_AGESEX(CovidDb):&lt;br /&gt;
        __tablename__ = &amp;#039;COVID19BE_CASES_AGESEX&amp;#039;&lt;br /&gt;
    &lt;br /&gt;
        id = Column(Integer, primary_key=True)&lt;br /&gt;
        date = Column(Date)&lt;br /&gt;
        province = Column(String)&lt;br /&gt;
        region = Column(String)&lt;br /&gt;
        sex = Column(String)&lt;br /&gt;
        cases = Column(Integer)&lt;br /&gt;
    &lt;br /&gt;
   # Déclaration du schema de la table COVID19BE_CASES_MUNI&lt;br /&gt;
    class COVID19BE_CASES_MUNI(CovidDb):&lt;br /&gt;
        __tablename__ = &amp;#039;COVID19BE_CASES_MUNI&amp;#039;&lt;br /&gt;
    &lt;br /&gt;
        id = Column(Integer, primary_key=True)&lt;br /&gt;
        nis5 = Column(Integer)&lt;br /&gt;
        date = Column(Date)&lt;br /&gt;
        city = Column(String)&lt;br /&gt;
        admin = Column(String)&lt;br /&gt;
        province = Column(String)&lt;br /&gt;
        region = Column(String)&lt;br /&gt;
        cases = Column(Integer)&lt;br /&gt;
&lt;br /&gt;
    # Déclaration du schema de la table GEOLOC&lt;br /&gt;
    class GEOLOC(CovidDb):&lt;br /&gt;
        __tablename__ = &amp;#039;GEOLOC&amp;#039;&lt;br /&gt;
&lt;br /&gt;
        id = Column(Integer, primary_key=True)&lt;br /&gt;
        city = Column(String)&lt;br /&gt;
        latitude = Column(String)&lt;br /&gt;
        longitude = Column(String)&lt;br /&gt;
   &lt;br /&gt;
    # Creation des tables si non existentes&lt;br /&gt;
    CovidDb.metadata.create_all(engine)&lt;br /&gt;
    &lt;br /&gt;
    # Creation du contexte pour manipuler les données de la Base de donnée&lt;br /&gt;
    session = Session()&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Récupération et import des données dans la Database locale  ( 25/04/2021 ) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt; &lt;br /&gt;
&lt;br /&gt;
# Traitement table COVID19BE_CASES_AGESEX&lt;br /&gt;
    &lt;br /&gt;
    try:&lt;br /&gt;
        # Recupération des donnée sciensano AGE/SEXE/CAS  &lt;br /&gt;
        res = requests.get(&amp;#039;https://epistat.sciensano.be/Data/COVID19BE_CASES_AGESEX.json&amp;#039;)&lt;br /&gt;
        # Supression des données avant mise à jour ( methode plus rapide que de tester si la valeur existe  déja ) &lt;br /&gt;
        session.query(COVID19BE_CASES_AGESEX).delete()&lt;br /&gt;
        # Boucle de traitement des données reçue dde sciensano &lt;br /&gt;
        for item in res.json():&lt;br /&gt;
            # Sciensano renvoie des entrées parfois incomplètes ou invalide -&amp;gt; Test si tout les champs sont présent.&lt;br /&gt;
            if ( &amp;#039;DATE&amp;#039; in item  and &amp;#039;PROVINCE&amp;#039; in item and &amp;#039;REGION&amp;#039; in item and &amp;#039;SEX&amp;#039; in item and &amp;#039;CASES&amp;#039; in item ):&lt;br /&gt;
                # Ajout de l&amp;#039;entrée dans la Base de donnée ( en mémoire ) &lt;br /&gt;
                record = COVID19BE_CASES_AGESEX( date=datetime.strptime(item[&amp;#039;DATE&amp;#039;],&amp;quot;%Y-%m-%d&amp;quot;), province=item[&amp;#039;PROVINCE&amp;#039;], region=item[&amp;#039;REGION&amp;#039;], sex=item[&amp;#039;SEX&amp;#039;], cases=item[&amp;#039;CASES&amp;#039;])&lt;br /&gt;
                session.add(record)&lt;br /&gt;
        # Ecriture des ajouts en mémore vers le fichier de la base de donnée&lt;br /&gt;
        session.commit()&lt;br /&gt;
    except:&lt;br /&gt;
        # Site inaccessible -&amp;gt; Pas de mise à jour des données&lt;br /&gt;
        print(&amp;quot;AGE/SEXE/CAS: Utilisation des données existentes sans mise à jour...&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
    &lt;br /&gt;
    # Traitement table COVID19BE_CASES_MUNI &lt;br /&gt;
    &lt;br /&gt;
    try:&lt;br /&gt;
         # Recupération des donnée sciensano VILLE/CAS&lt;br /&gt;
        res = requests.get(&amp;#039;https://epistat.sciensano.be/Data/COVID19BE_CASES_MUNI.json&amp;#039;)&lt;br /&gt;
        # Supression des données avant mise à jour ( methode plus rapide que de tester si la valeur existe  déja )&lt;br /&gt;
        session.query(COVID19BE_CASES_MUNI).delete()&lt;br /&gt;
        # Boucle de traitement des données reçue dde sciensano&lt;br /&gt;
        for item in res.json():&lt;br /&gt;
            # Sciensano renvoie des entrées parfois incomplètes ou invalide -&amp;gt; Test si tout les champs sont présent.&lt;br /&gt;
            if (&amp;#039;NIS5&amp;#039; in item and &amp;#039;DATE&amp;#039; in item and &amp;#039;TX_DESCR_FR&amp;#039; in item and &amp;#039;TX_ADM_DSTR_DESCR_FR&amp;#039; in item and &amp;#039;PROVINCE&amp;#039; in item and &amp;#039;REGION&amp;#039; in item and &amp;#039;CASES&amp;#039; in item ):&lt;br /&gt;
                record = COVID19BE_CASES_MUNI( nis5=item[&amp;#039;NIS5&amp;#039;], date=datetime.strptime(item[&amp;#039;DATE&amp;#039;],&amp;quot;%Y-%m-%d&amp;quot;),city=re.sub(&amp;#039; *\(.*&amp;#039;,&amp;#039;&amp;#039;,item[&amp;#039;TX_DESCR_FR&amp;#039;]),admin=item[&amp;#039;TX_ADM_DSTR_DESCR_FR&amp;#039;],province=item[&amp;#039;PROVINCE&amp;#039;], region=item[&amp;#039;REGION&amp;#039;],cases=item[&amp;#039;CASES&amp;#039;])&lt;br /&gt;
                session.add(record)&lt;br /&gt;
        # Ecriture des ajouts en mémore vers le fichier de la base de donnée&lt;br /&gt;
        session.commit()&lt;br /&gt;
    except:&lt;br /&gt;
        # Site inaccessible -&amp;gt; Pas de mise à jour des données&lt;br /&gt;
        print(&amp;quot;VILLE/CAS: Utilisation des données existentes sans mise à jour...&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
    # Traitement table  GEOLOC&lt;br /&gt;
&lt;br /&gt;
    # Recherche dans la Base de donnée des Villes existentes ( Distinc() utilisé pour supprimer les doublons ) &lt;br /&gt;
    cities = session.query(COVID19BE_CASES_MUNI.city).distinct(COVID19BE_CASES_MUNI.city)&lt;br /&gt;
&lt;br /&gt;
    # Preparatin API rapidapi tel que documenté sur https://rapidapi.com/wirefreethought/api/geodb-cities/endpoints&lt;br /&gt;
    url = &amp;quot;https://wft-geo-db.p.rapidapi.com/v1/geo/cities&amp;quot;&lt;br /&gt;
    headers = {&lt;br /&gt;
    &amp;#039;x-rapidapi-key&amp;#039;: &amp;quot;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&amp;quot;,&lt;br /&gt;
    &amp;#039;x-rapidapi-host&amp;#039;: &amp;quot;wft-geo-db.p.rapidapi.com&amp;quot;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    # Boucle de traitement des villes présente dans la table COVID19BE_CASES_MUNI &lt;br /&gt;
    for city in cities:&lt;br /&gt;
        # Recherche dans la table GEOLOC de la ville en cours de traitement &lt;br /&gt;
        db_record = session.query(GEOLOC).filter_by(city = city.city).first()&lt;br /&gt;
        # La ville n&amp;#039;est pas dans la table GEOLOC&lt;br /&gt;
        if ( db_record == None ):&lt;br /&gt;
            # Definition de la recherche a faire sur le site wft-geo-db.p.rapidapi.com/v1/geo/cities&lt;br /&gt;
            querystring = {&amp;quot;countryIds&amp;quot;:&amp;quot;BE&amp;quot;,&amp;quot;namePrefix&amp;quot;:city.city,&amp;quot;languageCode&amp;quot;:&amp;quot;FR&amp;quot;}&lt;br /&gt;
            # Recherche online stocké dans coord &lt;br /&gt;
            try:&lt;br /&gt;
                coord = requests.request(&amp;quot;GET&amp;quot;, url, headers=headers, params=querystring)&lt;br /&gt;
                # Vérification de nombre d&amp;#039;occurence retourné par l&amp;#039;API&lt;br /&gt;
                if ( coord.json()[&amp;#039;metadata&amp;#039;][&amp;#039;totalCount&amp;#039;] == 0 ):&lt;br /&gt;
                    # Aucun résultat&lt;br /&gt;
                    print ( city.city, &amp;quot;non trouvé&amp;quot;)&lt;br /&gt;
                else:&lt;br /&gt;
                    # Résulat disponible&lt;br /&gt;
                    print(&amp;quot;Ajout &amp;quot;,city.city)&lt;br /&gt;
                    # Ajout des coordonnées Lat/Long dans la table GEOLOC &lt;br /&gt;
                    record = GEOLOC( city = city.city, latitude = coord.json()[&amp;#039;data&amp;#039;][0][&amp;#039;latitude&amp;#039;],longitude = coord.json()[&amp;#039;data&amp;#039;][0][&amp;#039;longitude&amp;#039;])&lt;br /&gt;
                    session.add(record)&lt;br /&gt;
            except:&lt;br /&gt;
                # Site inaccessible -&amp;gt; abandon complet de la boucle de traitement&lt;br /&gt;
                print(&amp;quot;Site injoignable&amp;quot;)&lt;br /&gt;
                break&lt;br /&gt;
        # Ecriture des nouvelles données depuis la mémoire vers le fichier de la base de donnée.&lt;br /&gt;
    session.commit()&lt;br /&gt;
    return session&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Arthurlafontaine</name></author>
	</entry>
	<entry>
		<id>https://curlybraces.be/wiki/index.php?title=Utilisateur:Arthurlafontaine&amp;diff=4935</id>
		<title>Utilisateur:Arthurlafontaine</title>
		<link rel="alternate" type="text/html" href="https://curlybraces.be/wiki/index.php?title=Utilisateur:Arthurlafontaine&amp;diff=4935"/>
		<updated>2021-04-25T09:35:38Z</updated>

		<summary type="html">&lt;p&gt;Arthurlafontaine : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
le but du projet est de construire une animation du déplacement du virus covid 19 sur une carte de Belgique depuis le début de la contamination et de la questionner pour en trouver la possible souche du virus en Belgique. &lt;br /&gt;
&lt;br /&gt;
Pour ce faire je me base sur la data base de l&amp;#039;Institut scientifique de santé publique fédéral belge.[https://epistat.wiv-isp.be/covid/]&lt;br /&gt;
&lt;br /&gt;
pour Python j&amp;#039;utilise les bibliothèques Request et Alchemy. &lt;br /&gt;
&lt;br /&gt;
Pour mon plan j&amp;#039;utilise deux sources d&amp;#039;information:&lt;br /&gt;
sciensano: &lt;br /&gt;
-les cas confirmés par date, age , sexe et province&lt;br /&gt;
-les cas confirmés par date et municipalité&lt;br /&gt;
&lt;br /&gt;
Rapidapi:&lt;br /&gt;
-pour la géolocalisation des villes &lt;br /&gt;
[[Fichier:plan_arthur_2.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== code == &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
# Ajout outils pour les requêtes http&lt;br /&gt;
import requests&lt;br /&gt;
&lt;br /&gt;
# Ajout outils de manipulation du format json&lt;br /&gt;
import json&lt;br /&gt;
&lt;br /&gt;
# Ajout Outils de manipulation d&amp;#039;objet de type Date/Time&lt;br /&gt;
from datetime import datetime, timedelta&lt;br /&gt;
&lt;br /&gt;
# Ajout outils de manipulation de la base de donnée&lt;br /&gt;
import sqlalchemy&lt;br /&gt;
from sqlalchemy import create_engine, and_, or_&lt;br /&gt;
from sqlalchemy.ext.declarative import declarative_base&lt;br /&gt;
from sqlalchemy import Column, Integer, String, Date&lt;br /&gt;
from sqlalchemy.orm import sessionmaker&lt;br /&gt;
&lt;br /&gt;
# Ajout outils expressions régulières &lt;br /&gt;
import re&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
def prepareDb():&lt;br /&gt;
   &lt;br /&gt;
    # mise en place du moteur de base de donnée ( fichier covid.sqlite, encodage utf-8 )&lt;br /&gt;
    engine = create_engine(&amp;#039;sqlite:///covid.sqlite&amp;#039;, echo=False,encoding=&amp;#039;utf-8&amp;#039;)&lt;br /&gt;
    Session = sessionmaker(bind=engine)&lt;br /&gt;
   &lt;br /&gt;
    # Declaration de notre object de base do donnée &lt;br /&gt;
    CovidDb = declarative_base()&lt;br /&gt;
    &lt;br /&gt;
    # Déclaration du schema de la table COVID19BE_CASES_AGESEX &lt;br /&gt;
    class COVID19BE_CASES_AGESEX(CovidDb):&lt;br /&gt;
        __tablename__ = &amp;#039;COVID19BE_CASES_AGESEX&amp;#039;&lt;br /&gt;
    &lt;br /&gt;
        id = Column(Integer, primary_key=True)&lt;br /&gt;
        date = Column(Date)&lt;br /&gt;
        province = Column(String)&lt;br /&gt;
        region = Column(String)&lt;br /&gt;
        sex = Column(String)&lt;br /&gt;
        cases = Column(Integer)&lt;br /&gt;
    &lt;br /&gt;
   # Déclaration du schema de la table COVID19BE_CASES_MUNI&lt;br /&gt;
    class COVID19BE_CASES_MUNI(CovidDb):&lt;br /&gt;
        __tablename__ = &amp;#039;COVID19BE_CASES_MUNI&amp;#039;&lt;br /&gt;
    &lt;br /&gt;
        id = Column(Integer, primary_key=True)&lt;br /&gt;
        nis5 = Column(Integer)&lt;br /&gt;
        date = Column(Date)&lt;br /&gt;
        city = Column(String)&lt;br /&gt;
        admin = Column(String)&lt;br /&gt;
        province = Column(String)&lt;br /&gt;
        region = Column(String)&lt;br /&gt;
        cases = Column(Integer)&lt;br /&gt;
&lt;br /&gt;
    # Déclaration du schema de la table GEOLOC&lt;br /&gt;
    class GEOLOC(CovidDb):&lt;br /&gt;
        __tablename__ = &amp;#039;GEOLOC&amp;#039;&lt;br /&gt;
&lt;br /&gt;
        id = Column(Integer, primary_key=True)&lt;br /&gt;
        city = Column(String)&lt;br /&gt;
        latitude = Column(String)&lt;br /&gt;
        longitude = Column(String)&lt;br /&gt;
   &lt;br /&gt;
    # Creation des tables si non existentes&lt;br /&gt;
    CovidDb.metadata.create_all(engine)&lt;br /&gt;
    &lt;br /&gt;
    # Creation du contexte pour manipuler les données de la Base de donnée&lt;br /&gt;
    session = Session()&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Récupération et import des données dans la Database locale  ( 25/04/2021 ) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt; &lt;br /&gt;
&lt;br /&gt;
# Traitement table COVID19BE_CASES_AGESEX&lt;br /&gt;
    &lt;br /&gt;
    try:&lt;br /&gt;
        # Recupération des donnée sciensano AGE/SEXE/CAS  &lt;br /&gt;
        res = requests.get(&amp;#039;https://epistat.sciensano.be/Data/COVID19BE_CASES_AGESEX.json&amp;#039;)&lt;br /&gt;
        # Supression des données avant mise à jour ( methode plus rapide que de tester si la valeur existe  déja ) &lt;br /&gt;
        session.query(COVID19BE_CASES_AGESEX).delete()&lt;br /&gt;
        # Boucle de traitement des données reçue dde sciensano &lt;br /&gt;
        for item in res.json():&lt;br /&gt;
            # Sciensano renvoie des entrées parfois incomplètes ou invalide -&amp;gt; Test si tout les champs sont présent.&lt;br /&gt;
            if ( &amp;#039;DATE&amp;#039; in item  and &amp;#039;PROVINCE&amp;#039; in item and &amp;#039;REGION&amp;#039; in item and &amp;#039;SEX&amp;#039; in item and &amp;#039;CASES&amp;#039; in item ):&lt;br /&gt;
                # Ajout de l&amp;#039;entrée dans la Base de donnée ( en mémoire ) &lt;br /&gt;
                record = COVID19BE_CASES_AGESEX( date=datetime.strptime(item[&amp;#039;DATE&amp;#039;],&amp;quot;%Y-%m-%d&amp;quot;), province=item[&amp;#039;PROVINCE&amp;#039;], region=item[&amp;#039;REGION&amp;#039;], sex=item[&amp;#039;SEX&amp;#039;], cases=item[&amp;#039;CASES&amp;#039;])&lt;br /&gt;
                session.add(record)&lt;br /&gt;
        # Ecriture des ajouts en mémore vers le fichier de la base de donnée&lt;br /&gt;
        session.commit()&lt;br /&gt;
    except:&lt;br /&gt;
        # Site inaccessible -&amp;gt; Pas de mise à jour des données&lt;br /&gt;
        print(&amp;quot;AGE/SEXE/CAS: Utilisation des données existentes sans mise à jour...&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
    &lt;br /&gt;
    # Traitement table COVID19BE_CASES_MUNI &lt;br /&gt;
    &lt;br /&gt;
    try:&lt;br /&gt;
         # Recupération des donnée sciensano VILLE/CAS&lt;br /&gt;
        res = requests.get(&amp;#039;https://epistat.sciensano.be/Data/COVID19BE_CASES_MUNI.json&amp;#039;)&lt;br /&gt;
        # Supression des données avant mise à jour ( methode plus rapide que de tester si la valeur existe  déja )&lt;br /&gt;
        session.query(COVID19BE_CASES_MUNI).delete()&lt;br /&gt;
        # Boucle de traitement des données reçue dde sciensano&lt;br /&gt;
        for item in res.json():&lt;br /&gt;
            # Sciensano renvoie des entrées parfois incomplètes ou invalide -&amp;gt; Test si tout les champs sont présent.&lt;br /&gt;
            if (&amp;#039;NIS5&amp;#039; in item and &amp;#039;DATE&amp;#039; in item and &amp;#039;TX_DESCR_FR&amp;#039; in item and &amp;#039;TX_ADM_DSTR_DESCR_FR&amp;#039; in item and &amp;#039;PROVINCE&amp;#039; in item and &amp;#039;REGION&amp;#039; in item and &amp;#039;CASES&amp;#039; in item ):&lt;br /&gt;
                record = COVID19BE_CASES_MUNI( nis5=item[&amp;#039;NIS5&amp;#039;], date=datetime.strptime(item[&amp;#039;DATE&amp;#039;],&amp;quot;%Y-%m-%d&amp;quot;),city=re.sub(&amp;#039; *\(.*&amp;#039;,&amp;#039;&amp;#039;,item[&amp;#039;TX_DESCR_FR&amp;#039;]),admin=item[&amp;#039;TX_ADM_DSTR_DESCR_FR&amp;#039;],province=item[&amp;#039;PROVINCE&amp;#039;], region=item[&amp;#039;REGION&amp;#039;],cases=item[&amp;#039;CASES&amp;#039;])&lt;br /&gt;
                session.add(record)&lt;br /&gt;
        # Ecriture des ajouts en mémore vers le fichier de la base de donnée&lt;br /&gt;
        session.commit()&lt;br /&gt;
    except:&lt;br /&gt;
        # Site inaccessible -&amp;gt; Pas de mise à jour des données&lt;br /&gt;
        print(&amp;quot;VILLE/CAS: Utilisation des données existentes sans mise à jour...&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
    # Traitement table  GEOLOC&lt;br /&gt;
&lt;br /&gt;
    # Recherche dans la Base de donnée des Villes existentes ( Distinc() utilisé pour supprimer les doublons ) &lt;br /&gt;
    cities = session.query(COVID19BE_CASES_MUNI.city).distinct(COVID19BE_CASES_MUNI.city)&lt;br /&gt;
&lt;br /&gt;
    # Preparatin API rapidapi tel que documenté sur https://rapidapi.com/wirefreethought/api/geodb-cities/endpoints&lt;br /&gt;
    url = &amp;quot;https://wft-geo-db.p.rapidapi.com/v1/geo/cities&amp;quot;&lt;br /&gt;
    headers = {&lt;br /&gt;
    &amp;#039;x-rapidapi-key&amp;#039;: &amp;quot;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&amp;quot;,&lt;br /&gt;
    &amp;#039;x-rapidapi-host&amp;#039;: &amp;quot;wft-geo-db.p.rapidapi.com&amp;quot;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    # Boucle de traitement des villes présente dans la table COVID19BE_CASES_MUNI &lt;br /&gt;
    for city in cities:&lt;br /&gt;
        # Recherche dans la table GEOLOC de la ville en cours de traitement &lt;br /&gt;
        db_record = session.query(GEOLOC).filter_by(city = city.city).first()&lt;br /&gt;
        # La ville n&amp;#039;est pas dans la table GEOLOC&lt;br /&gt;
        if ( db_record == None ):&lt;br /&gt;
            # Definition de la recherche a faire sur le site wft-geo-db.p.rapidapi.com/v1/geo/cities&lt;br /&gt;
            querystring = {&amp;quot;countryIds&amp;quot;:&amp;quot;BE&amp;quot;,&amp;quot;namePrefix&amp;quot;:city.city,&amp;quot;languageCode&amp;quot;:&amp;quot;FR&amp;quot;}&lt;br /&gt;
            # Recherche online stocké dans coord &lt;br /&gt;
            try:&lt;br /&gt;
                coord = requests.request(&amp;quot;GET&amp;quot;, url, headers=headers, params=querystring)&lt;br /&gt;
                # Vérification de nombre d&amp;#039;occurence retourné par l&amp;#039;API&lt;br /&gt;
                if ( coord.json()[&amp;#039;metadata&amp;#039;][&amp;#039;totalCount&amp;#039;] == 0 ):&lt;br /&gt;
                    # Aucun résultat&lt;br /&gt;
                    print ( city.city, &amp;quot;non trouvé&amp;quot;)&lt;br /&gt;
                else:&lt;br /&gt;
                    # Résulat disponible&lt;br /&gt;
                    print(&amp;quot;Ajout &amp;quot;,city.city)&lt;br /&gt;
                    # Ajout des coordonnées Lat/Long dans la table GEOLOC &lt;br /&gt;
                    record = GEOLOC( city = city.city, latitude = coord.json()[&amp;#039;data&amp;#039;][0][&amp;#039;latitude&amp;#039;],longitude = coord.json()[&amp;#039;data&amp;#039;][0][&amp;#039;longitude&amp;#039;])&lt;br /&gt;
                    session.add(record)&lt;br /&gt;
            except:&lt;br /&gt;
                # Site inaccessible -&amp;gt; abandon complet de la boucle de traitement&lt;br /&gt;
                print(&amp;quot;Site injoignable&amp;quot;)&lt;br /&gt;
                break&lt;br /&gt;
        # Ecriture des nouvelles données depuis la mémoire vers le fichier de la base de donnée.&lt;br /&gt;
    session.commit()&lt;br /&gt;
    return session&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Arthurlafontaine</name></author>
	</entry>
	<entry>
		<id>https://curlybraces.be/wiki/index.php?title=Utilisateur:Arthurlafontaine&amp;diff=4934</id>
		<title>Utilisateur:Arthurlafontaine</title>
		<link rel="alternate" type="text/html" href="https://curlybraces.be/wiki/index.php?title=Utilisateur:Arthurlafontaine&amp;diff=4934"/>
		<updated>2021-04-25T09:34:37Z</updated>

		<summary type="html">&lt;p&gt;Arthurlafontaine : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
le but du projet est de construire une animation du déplacement du virus covid 19 sur une carte de Belgique depuis le début de la contamination et de la questionner pour en trouver la possible souche du virus en Belgique. &lt;br /&gt;
&lt;br /&gt;
Pour ce faire je me base sur la data base de l&amp;#039;Institut scientifique de santé publique fédéral belge.[https://epistat.wiv-isp.be/covid/]&lt;br /&gt;
&lt;br /&gt;
pour Python j&amp;#039;utilise les bibliothèques Request et Alchemy. &lt;br /&gt;
&lt;br /&gt;
Pour mon plan j&amp;#039;utilise deux sources d&amp;#039;information:&lt;br /&gt;
sciensano: &lt;br /&gt;
-les cas confirmés par date, age , sexe et province&lt;br /&gt;
-les cas confirmés par date et municipalité&lt;br /&gt;
&lt;br /&gt;
Rapidapi:&lt;br /&gt;
-pour la géolocalisation des villes &lt;br /&gt;
[[Fichier:plan_arthur_2.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== code == &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
# Ajout outils pour les requêtes http&lt;br /&gt;
import requests&lt;br /&gt;
&lt;br /&gt;
# Ajout outils de manipulation du format json&lt;br /&gt;
import json&lt;br /&gt;
&lt;br /&gt;
# Ajout Outils de manipulation d&amp;#039;objet de type Date/Time&lt;br /&gt;
from datetime import datetime, timedelta&lt;br /&gt;
&lt;br /&gt;
# Ajout outils de manipulation de la base de donnée&lt;br /&gt;
import sqlalchemy&lt;br /&gt;
from sqlalchemy import create_engine, and_, or_&lt;br /&gt;
from sqlalchemy.ext.declarative import declarative_base&lt;br /&gt;
from sqlalchemy import Column, Integer, String, Date&lt;br /&gt;
from sqlalchemy.orm import sessionmaker&lt;br /&gt;
&lt;br /&gt;
# Ajout outils expressions régulières &lt;br /&gt;
import re&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
def prepareDb():&lt;br /&gt;
   &lt;br /&gt;
    # mise en place du moteur de base de donnée ( fichier covid.sqlite, encodage utf-8 )&lt;br /&gt;
    engine = create_engine(&amp;#039;sqlite:///covid.sqlite&amp;#039;, echo=False,encoding=&amp;#039;utf-8&amp;#039;)&lt;br /&gt;
    Session = sessionmaker(bind=engine)&lt;br /&gt;
   &lt;br /&gt;
    # Declaration de notre object de base do donnée &lt;br /&gt;
    CovidDb = declarative_base()&lt;br /&gt;
    &lt;br /&gt;
    # Déclaration du schema de la table COVID19BE_CASES_AGESEX &lt;br /&gt;
    class COVID19BE_CASES_AGESEX(CovidDb):&lt;br /&gt;
        __tablename__ = &amp;#039;COVID19BE_CASES_AGESEX&amp;#039;&lt;br /&gt;
    &lt;br /&gt;
        id = Column(Integer, primary_key=True)&lt;br /&gt;
        date = Column(Date)&lt;br /&gt;
        province = Column(String)&lt;br /&gt;
        region = Column(String)&lt;br /&gt;
        sex = Column(String)&lt;br /&gt;
        cases = Column(Integer)&lt;br /&gt;
    &lt;br /&gt;
   # Déclaration du schema de la table COVID19BE_CASES_MUNI&lt;br /&gt;
    class COVID19BE_CASES_MUNI(CovidDb):&lt;br /&gt;
        __tablename__ = &amp;#039;COVID19BE_CASES_MUNI&amp;#039;&lt;br /&gt;
    &lt;br /&gt;
        id = Column(Integer, primary_key=True)&lt;br /&gt;
        nis5 = Column(Integer)&lt;br /&gt;
        date = Column(Date)&lt;br /&gt;
        city = Column(String)&lt;br /&gt;
        admin = Column(String)&lt;br /&gt;
        province = Column(String)&lt;br /&gt;
        region = Column(String)&lt;br /&gt;
        cases = Column(Integer)&lt;br /&gt;
&lt;br /&gt;
    # Déclaration du schema de la table GEOLOC&lt;br /&gt;
    class GEOLOC(CovidDb):&lt;br /&gt;
        __tablename__ = &amp;#039;GEOLOC&amp;#039;&lt;br /&gt;
&lt;br /&gt;
        id = Column(Integer, primary_key=True)&lt;br /&gt;
        city = Column(String)&lt;br /&gt;
        latitude = Column(String)&lt;br /&gt;
        longitude = Column(String)&lt;br /&gt;
   &lt;br /&gt;
    # Creation des tables si non existentes&lt;br /&gt;
    CovidDb.metadata.create_all(engine)&lt;br /&gt;
    &lt;br /&gt;
    # Creation du contexte pour manipuler les données de la Base de donnée&lt;br /&gt;
    session = Session()&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Récupération et import des données dans la Database locale  ( 25/04/2021 ) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt; &lt;br /&gt;
&lt;br /&gt;
# Traitement table COVID19BE_CASES_AGESEX&lt;br /&gt;
    &lt;br /&gt;
    try:&lt;br /&gt;
        # Recupération des donnée sciensano AGE/SEXE/CAS  &lt;br /&gt;
        res = requests.get(&amp;#039;https://epistat.sciensano.be/Data/COVID19BE_CASES_AGESEX.json&amp;#039;)&lt;br /&gt;
        # Supression des données avant mise à jour ( methode plus rapide que de tester si la valeur existe  déja ) &lt;br /&gt;
        session.query(COVID19BE_CASES_AGESEX).delete()&lt;br /&gt;
        # Boucle de traitement des données reçue dde sciensano &lt;br /&gt;
        for item in res.json():&lt;br /&gt;
            # Sciensano renvoie des entrées parfois incomplètes ou invalide -&amp;gt; Test si tout les champs sont présent.&lt;br /&gt;
            if ( &amp;#039;DATE&amp;#039; in item  and &amp;#039;PROVINCE&amp;#039; in item and &amp;#039;REGION&amp;#039; in item and &amp;#039;SEX&amp;#039; in item and &amp;#039;CASES&amp;#039; in item ):&lt;br /&gt;
                # Ajout de l&amp;#039;entrée dans la Base de donnée ( en mémoire ) &lt;br /&gt;
                record = COVID19BE_CASES_AGESEX( date=datetime.strptime(item[&amp;#039;DATE&amp;#039;],&amp;quot;%Y-%m-%d&amp;quot;), province=item[&amp;#039;PROVINCE&amp;#039;], region=item[&amp;#039;REGION&amp;#039;], sex=item[&amp;#039;SEX&amp;#039;], cases=item[&amp;#039;CASES&amp;#039;])&lt;br /&gt;
                session.add(record)&lt;br /&gt;
        # Ecriture des ajouts en mémore vers le fichier de la base de donnée&lt;br /&gt;
        session.commit()&lt;br /&gt;
    except:&lt;br /&gt;
        # Site inaccessible -&amp;gt; Pas de mise à jour des données&lt;br /&gt;
        print(&amp;quot;AGE/SEXE/CAS: Utilisation des données existentes sans mise à jour...&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
    &lt;br /&gt;
    # Traitement table COVID19BE_CASES_MUNI &lt;br /&gt;
    &lt;br /&gt;
    try:&lt;br /&gt;
         # Recupération des donnée sciensano VILLE/CAS&lt;br /&gt;
        res = requests.get(&amp;#039;https://epistat.sciensano.be/Data/COVID19BE_CASES_MUNI.json&amp;#039;)&lt;br /&gt;
        # Supression des données avant mise à jour ( methode plus rapide que de tester si la valeur existe  déja )&lt;br /&gt;
        session.query(COVID19BE_CASES_MUNI).delete()&lt;br /&gt;
        # Boucle de traitement des données reçue dde sciensano&lt;br /&gt;
        for item in res.json():&lt;br /&gt;
            # Sciensano renvoie des entrées parfois incomplètes ou invalide -&amp;gt; Test si tout les champs sont présent.&lt;br /&gt;
            if (&amp;#039;NIS5&amp;#039; in item and &amp;#039;DATE&amp;#039; in item and &amp;#039;TX_DESCR_FR&amp;#039; in item and &amp;#039;TX_ADM_DSTR_DESCR_FR&amp;#039; in item and &amp;#039;PROVINCE&amp;#039; in item and &amp;#039;REGION&amp;#039; in item and &amp;#039;CASES&amp;#039; in item ):&lt;br /&gt;
                record = COVID19BE_CASES_MUNI( nis5=item[&amp;#039;NIS5&amp;#039;], date=datetime.strptime(item[&amp;#039;DATE&amp;#039;],&amp;quot;%Y-%m-%d&amp;quot;),city=re.sub(&amp;#039; *\(.*&amp;#039;,&amp;#039;&amp;#039;,item[&amp;#039;TX_DESCR_FR&amp;#039;]),admin=item[&amp;#039;TX_ADM_DSTR_DESCR_FR&amp;#039;],province=item[&amp;#039;PROVINCE&amp;#039;], region=item[&amp;#039;REGION&amp;#039;],cases=item[&amp;#039;CASES&amp;#039;])&lt;br /&gt;
                session.add(record)&lt;br /&gt;
        # Ecriture des ajouts en mémore vers le fichier de la base de donnée&lt;br /&gt;
        session.commit()&lt;br /&gt;
    except:&lt;br /&gt;
        # Site inaccessible -&amp;gt; Pas de mise à jour des données&lt;br /&gt;
        print(&amp;quot;VILLE/CAS: Utilisation des données existentes sans mise à jour...&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
    # Traitement table  GEOLOC&lt;br /&gt;
&lt;br /&gt;
    # Recherche dans la Base de donnée des Villes existentes ( Distinc() utilisé pour supprimer les doublons ) &lt;br /&gt;
    cities = session.query(COVID19BE_CASES_MUNI.city).distinct(COVID19BE_CASES_MUNI.city)&lt;br /&gt;
&lt;br /&gt;
    # Preparatin API rapidapi tel que documenté sur https://rapidapi.com/wirefreethought/api/geodb-cities/endpoints&lt;br /&gt;
    url = &amp;quot;https://wft-geo-db.p.rapidapi.com/v1/geo/cities&amp;quot;&lt;br /&gt;
    headers = {&lt;br /&gt;
    &amp;#039;x-rapidapi-key&amp;#039;: &amp;quot;4c8b955741msh69522e8d445fd6ap1aca0bjsn9790de5da0ea&amp;quot;,&lt;br /&gt;
    &amp;#039;x-rapidapi-host&amp;#039;: &amp;quot;wft-geo-db.p.rapidapi.com&amp;quot;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    # Boucle de traitement des villes présente dans la table COVID19BE_CASES_MUNI &lt;br /&gt;
    for city in cities:&lt;br /&gt;
        # Recherche dans la table GEOLOC de la ville en cours de traitement &lt;br /&gt;
        db_record = session.query(GEOLOC).filter_by(city = city.city).first()&lt;br /&gt;
        # La ville n&amp;#039;est pas dans la table GEOLOC&lt;br /&gt;
        if ( db_record == None ):&lt;br /&gt;
            # Definition de la recherche a faire sur le site wft-geo-db.p.rapidapi.com/v1/geo/cities&lt;br /&gt;
            querystring = {&amp;quot;countryIds&amp;quot;:&amp;quot;BE&amp;quot;,&amp;quot;namePrefix&amp;quot;:city.city,&amp;quot;languageCode&amp;quot;:&amp;quot;FR&amp;quot;}&lt;br /&gt;
            # Recherche online stocké dans coord &lt;br /&gt;
            try:&lt;br /&gt;
                coord = requests.request(&amp;quot;GET&amp;quot;, url, headers=headers, params=querystring)&lt;br /&gt;
                # Vérification de nombre d&amp;#039;occurence retourné par l&amp;#039;API&lt;br /&gt;
                if ( coord.json()[&amp;#039;metadata&amp;#039;][&amp;#039;totalCount&amp;#039;] == 0 ):&lt;br /&gt;
                    # Aucun résultat&lt;br /&gt;
                    print ( city.city, &amp;quot;non trouvé&amp;quot;)&lt;br /&gt;
                else:&lt;br /&gt;
                    # Résulat disponible&lt;br /&gt;
                    print(&amp;quot;Ajout &amp;quot;,city.city)&lt;br /&gt;
                    # Ajout des coordonnées Lat/Long dans la table GEOLOC &lt;br /&gt;
                    record = GEOLOC( city = city.city, latitude = coord.json()[&amp;#039;data&amp;#039;][0][&amp;#039;latitude&amp;#039;],longitude = coord.json()[&amp;#039;data&amp;#039;][0][&amp;#039;longitude&amp;#039;])&lt;br /&gt;
                    session.add(record)&lt;br /&gt;
            except:&lt;br /&gt;
                # Site inaccessible -&amp;gt; abandon complet de la boucle de traitement&lt;br /&gt;
                print(&amp;quot;Site injoignable&amp;quot;)&lt;br /&gt;
                break&lt;br /&gt;
        # Ecriture des nouvelles données depuis la mémoire vers le fichier de la base de donnée.&lt;br /&gt;
    session.commit()&lt;br /&gt;
    return session&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Arthurlafontaine</name></author>
	</entry>
	<entry>
		<id>https://curlybraces.be/wiki/index.php?title=Utilisateur:Arthurlafontaine&amp;diff=4744</id>
		<title>Utilisateur:Arthurlafontaine</title>
		<link rel="alternate" type="text/html" href="https://curlybraces.be/wiki/index.php?title=Utilisateur:Arthurlafontaine&amp;diff=4744"/>
		<updated>2021-02-07T14:30:26Z</updated>

		<summary type="html">&lt;p&gt;Arthurlafontaine : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
le but du projet est de construire une animation du déplacement du virus covid 19 sur une carte de Belgique depuis le début de la contamination et de la questionner pour en trouver la possible souche du virus en Belgique. &lt;br /&gt;
&lt;br /&gt;
Pour ce faire je me base sur la data base de l&amp;#039;Institut scientifique de santé publique fédéral belge.[https://epistat.wiv-isp.be/covid/]&lt;br /&gt;
&lt;br /&gt;
pour Python j&amp;#039;utilise les bibliothèques Request et Alchemy. &lt;br /&gt;
&lt;br /&gt;
Pour mon plan j&amp;#039;utilise deux sources d&amp;#039;information:&lt;br /&gt;
sciensano: &lt;br /&gt;
-les cas confirmés par date, age , sexe et province&lt;br /&gt;
-les cas confirmés par date et municipalité&lt;br /&gt;
&lt;br /&gt;
Rapidapi:&lt;br /&gt;
-pour la géolocalisation des villes &lt;br /&gt;
[[Fichier:plan_arthur_2.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== code ==&lt;br /&gt;
# Ajout outils pour les requêtes http&lt;br /&gt;
import requests&lt;br /&gt;
&lt;br /&gt;
# Ajout outils de manipulation du format json&lt;br /&gt;
import json&lt;br /&gt;
&lt;br /&gt;
# Ajout Outils de manipulation d&amp;#039;objet de type Date/Time&lt;br /&gt;
from datetime import datetime, timedelta&lt;br /&gt;
&lt;br /&gt;
# Ajout outils de manipulation de la base de donnée&lt;br /&gt;
import sqlalchemy&lt;br /&gt;
from sqlalchemy import create_engine, and_, or_&lt;br /&gt;
from sqlalchemy.ext.declarative import declarative_base&lt;br /&gt;
from sqlalchemy import Column, Integer, String, Date&lt;br /&gt;
from sqlalchemy.orm import sessionmaker&lt;br /&gt;
&lt;br /&gt;
# Ajout outils expressions régulières &lt;br /&gt;
import re&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
def prepareDb():&lt;br /&gt;
   &lt;br /&gt;
    # mise en place du moteur de base de donnée ( fichier covid.sqlite, encodage utf-8 )&lt;br /&gt;
    engine = create_engine(&amp;#039;sqlite:///covid.sqlite&amp;#039;, echo=False,encoding=&amp;#039;utf-8&amp;#039;)&lt;br /&gt;
    Session = sessionmaker(bind=engine)&lt;br /&gt;
   &lt;br /&gt;
    # Declaration de notre object de base do donnée &lt;br /&gt;
    CovidDb = declarative_base()&lt;br /&gt;
    &lt;br /&gt;
    # Déclaration du schema de la table COVID19BE_CASES_AGESEX &lt;br /&gt;
    class COVID19BE_CASES_AGESEX(CovidDb):&lt;br /&gt;
        __tablename__ = &amp;#039;COVID19BE_CASES_AGESEX&amp;#039;&lt;br /&gt;
    &lt;br /&gt;
        id = Column(Integer, primary_key=True)&lt;br /&gt;
        date = Column(Date)&lt;br /&gt;
        province = Column(String)&lt;br /&gt;
        region = Column(String)&lt;br /&gt;
        sex = Column(String)&lt;br /&gt;
        cases = Column(Integer)&lt;br /&gt;
    &lt;br /&gt;
   # Déclaration du schema de la table COVID19BE_CASES_MUNI&lt;br /&gt;
    class COVID19BE_CASES_MUNI(CovidDb):&lt;br /&gt;
        __tablename__ = &amp;#039;COVID19BE_CASES_MUNI&amp;#039;&lt;br /&gt;
    &lt;br /&gt;
        id = Column(Integer, primary_key=True)&lt;br /&gt;
        nis5 = Column(Integer)&lt;br /&gt;
        date = Column(Date)&lt;br /&gt;
        city = Column(String)&lt;br /&gt;
        admin = Column(String)&lt;br /&gt;
        province = Column(String)&lt;br /&gt;
        region = Column(String)&lt;br /&gt;
        cases = Column(Integer)&lt;br /&gt;
&lt;br /&gt;
    # Déclaration du schema de la table GEOLOC&lt;br /&gt;
    class GEOLOC(CovidDb):&lt;br /&gt;
        __tablename__ = &amp;#039;GEOLOC&amp;#039;&lt;br /&gt;
&lt;br /&gt;
        id = Column(Integer, primary_key=True)&lt;br /&gt;
        city = Column(String)&lt;br /&gt;
        latitude = Column(String)&lt;br /&gt;
        longitude = Column(String)&lt;br /&gt;
   &lt;br /&gt;
    # Creation des tables si non existentes&lt;br /&gt;
    CovidDb.metadata.create_all(engine)&lt;br /&gt;
    &lt;br /&gt;
    # Creation du contexte pour manipuler les données de la Base de donnée&lt;br /&gt;
    session = Session()&lt;/div&gt;</summary>
		<author><name>Arthurlafontaine</name></author>
	</entry>
	<entry>
		<id>https://curlybraces.be/wiki/index.php?title=Utilisateur:Arthurlafontaine&amp;diff=4571</id>
		<title>Utilisateur:Arthurlafontaine</title>
		<link rel="alternate" type="text/html" href="https://curlybraces.be/wiki/index.php?title=Utilisateur:Arthurlafontaine&amp;diff=4571"/>
		<updated>2021-01-18T15:53:29Z</updated>

		<summary type="html">&lt;p&gt;Arthurlafontaine : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;le but du projet est de construire une animation du déplacement du virus covid 19 sur une carte de Belgique depuis le début de la contamination et de la questionner pour en trouver la possible souche du virus en Belgique. &lt;br /&gt;
&lt;br /&gt;
Pour ce faire je me base sur la data base de l&amp;#039;Institut scientifique de santé publique fédéral belge.[https://epistat.wiv-isp.be/covid/]&lt;br /&gt;
&lt;br /&gt;
pour Python j&amp;#039;utilise les bibliothèques Request et Alchemy. &lt;br /&gt;
&lt;br /&gt;
Pour mon plan j&amp;#039;utilise deux sources d&amp;#039;information:&lt;br /&gt;
sciensano: &lt;br /&gt;
-les cas confirmés par date, age , sexe et province&lt;br /&gt;
-les cas confirmés par date et municipalité&lt;br /&gt;
&lt;br /&gt;
Rapidapi:&lt;br /&gt;
-pour la géolocalisation des villes &lt;br /&gt;
[[Fichier:plan_arthur_2.png]]&lt;/div&gt;</summary>
		<author><name>Arthurlafontaine</name></author>
	</entry>
	<entry>
		<id>https://curlybraces.be/wiki/index.php?title=Fichier:Plan_arthur_2.png&amp;diff=4570</id>
		<title>Fichier:Plan arthur 2.png</title>
		<link rel="alternate" type="text/html" href="https://curlybraces.be/wiki/index.php?title=Fichier:Plan_arthur_2.png&amp;diff=4570"/>
		<updated>2021-01-18T15:50:20Z</updated>

		<summary type="html">&lt;p&gt;Arthurlafontaine : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Arthurlafontaine</name></author>
	</entry>
	<entry>
		<id>https://curlybraces.be/wiki/index.php?title=Utilisateur:Arthurlafontaine&amp;diff=4480</id>
		<title>Utilisateur:Arthurlafontaine</title>
		<link rel="alternate" type="text/html" href="https://curlybraces.be/wiki/index.php?title=Utilisateur:Arthurlafontaine&amp;diff=4480"/>
		<updated>2021-01-04T16:51:09Z</updated>

		<summary type="html">&lt;p&gt;Arthurlafontaine : Page créée avec « le but du projet est de construire une animation du déplacement du virus covid 19 sur une carte de Belgique depuis le début de la contamination. Pour ce faire je me base... »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;le but du projet est de construire une animation du déplacement du virus covid 19 sur une carte de Belgique depuis le début de la contamination. Pour ce faire je me base sur la data base de l&amp;#039;Institut scientifique de santé publique fédéral belge.[https://epistat.wiv-isp.be/covid/]&lt;br /&gt;
&lt;br /&gt;
Pour mon plan j&amp;#039;utilise deux bases de données: &lt;br /&gt;
-les cas confirmés par date, age , sexe et province&lt;br /&gt;
-les cas confirmés par date et municipalité &lt;br /&gt;
[[Fichier:plan arthur.jpg]]&lt;/div&gt;</summary>
		<author><name>Arthurlafontaine</name></author>
	</entry>
	<entry>
		<id>https://curlybraces.be/wiki/index.php?title=Fichier:Plan_arthur.jpg&amp;diff=4479</id>
		<title>Fichier:Plan arthur.jpg</title>
		<link rel="alternate" type="text/html" href="https://curlybraces.be/wiki/index.php?title=Fichier:Plan_arthur.jpg&amp;diff=4479"/>
		<updated>2021-01-04T16:44:12Z</updated>

		<summary type="html">&lt;p&gt;Arthurlafontaine : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Arthurlafontaine</name></author>
	</entry>
</feed>