Qgis3PythonMots-clefs : interopérabilité Python/QGIS, variable, boucle, fonction, condition, liste, argument, chaîne formatée, fonctions géométriques, création de fichiers, génération de cartes, fonctions cartographiques, fonctions standalone, traitement de données cartographiques, workflow, milieu alpin

Enseignant responsable : Georges Hinot

Pré-requis : une bonne connaissance d'un logiciel SIG supportant Python (QGIS ou ArcGIS par exemple) et des problématiques/besoins/enjeux de la géomatique.

Compétences visées : mettre en place un protocole de développement autour d'une problématique géomatique, de la « re-contextualisation du besoin » jusqu'à l'écriture d'un script Python répondant à ce besoin.

Enjeux du cours : rendre les étudiants autonomes dans la création et l'entretien de scripts « automatisants ». Dans ce type de tâche, l’autonomie consiste à savoir interpréter un besoin humain, ré-interpréter ses propres problématiques de programmation et à écrire/chercher/modifier les blocs de code nécessaires.

Programme pédagogique : initiation aux fondamentaux du langage puis mise en situation (générer des cartes à partir de données géographiques). En plus de la simple automatisation des cartographies, le cours nous donnera l'occasion, toujours en Python, d'utiliser des API, de traiter des données et de mettre en place des modes d'affichages customisés sur QGIS. Selon l'avancée du cours, nous pourrons aussi aborder le mode « standalone » permis par le duo QGIS-Python, la création de plugins QGIS et les possibilités de webmapping/analyse/ingénierie de données permises par Python.

Exemple de carte produite par Python

CMD

Exécuter un fichier PHP en ligne de commande :

php -f send-email.php

Paramétrer l'envoi d'emails (PHPmailer et Gmail)

Après avoir installé Visual C++ et Wamp, on peut tester l'envoi d'email avec PHP, qui sera utile pour tester en local CMS et autres frameworks.

Ci-dessous quelques remarques avec les dernières versions disponibles en février 2024.

Après Wamp, j'ai installé Composer, via l'installateur Windows officiel :

https://getcomposer.org/download/

L'installateur a choisi d'utiliser php7.4.33, je n'ai rien changé lol (il est situé dans C:\wamp64\bin\php). J'ai donc modifié la version utilisée par Wamp dans ce sens, puis relancé Wamp (en réalité, plus tard j'ai remis la dernière version de PHP dans Wamp, sans changement, ça marchera).

Puis en CMD :

composer require phpmailer/phpmailer

À partir de là je vois ce dossier :

C:\Users\georg\vendor

Avec à l'intérieur les dossiers composer et phpmailer.

...et afficher quelques données géographiques sous QGIS 

Salut toi ! Prêt à bénéficier de toute la puissance de Postgres 15 ? Tu as bien mis ta ceinture de sécurité ?

Maîtrise tes tremblements, bien compréhensibles face à ce déluge de technologies aux performances abyssales, et prépare-toi à entrer dans un monde nouveau, où l'imagination est la seule limite !

🤖🤟🌐💪🧭🐘

zones isochrones orsNous allons calculer les zones isochrones à 15 minutes des magasins Décathlon français, et les coupler avec les données géographiques de l'IGN croisées avec les données statistiques de l'INSEE.

L'ensemble formera de supposées zones de chalandise des magasins, particulièrement pertinentes car couplées avec de vraies zones isochrones. Nous calculerons aussi la cannibalisation des magasins, ainsi que leur proximité avec des équipements sportifs.

Pour ce faire nous n'utiliserons que des données en open-source, l'API d'openrouteservice, le logiciel libre QGIS et peut-être un peu de code Python.

Mots-clefs : géomarketing, IRIS, INSEE, IGN, OSM, SIG, BDD, traitement de données, SQL, zones de chalandise, indicateur, requête de regroupement, zones isochrones, Python

Enseignants responsables : Georges Hinot

Pré-requis : des notions sur QGIS ou autres SIG, des notions sur Excel ou autres tableurs.

Compétences visées : maîtrise théorique et technique des notions de base du géomarketing (zones isochrones, zones de chalandise, indicateurs, jointures et requêtes de regroupement).

Enjeux du cours : rendre autonome les étudiants sur la recherche et l’usage de données autour de problématiques géomarketing, faire « parler » la donnée, créer des indicateurs, veiller à la pertinence des données représentées.

Programme pédagogique : mise en situation autour d'une commande géomarketing impliquant la récupération, le traitement et la représentation de données. Selon l'avancée du cours, nous irons jusqu'à utiliser des fonctionnalités avancées de QGIS (SQL spatial) et Python (création de zones isochrones via une API et customisation du comportement de QGIS).

Le sommaire de droite et la navigation sous le texte vous permettent de vous déplacer dans ce tutoriel.

Mots-clefs : géomarketing, IRIS, INSEE, IGN, OSM, SIG, BDD, traitement de données, SQL, zones de chalandise, indicateur, requête de regroupement, zones isochrones, Python

Enseignants responsables : Georges Hinot

Pré-requis : des notions sur QGIS ou autres SIG, des notions sur Excel ou autres tableurs.

Compétences visées : maîtrise théorique et technique des notions de base du géomarketing (zones isochrones, zones de chalandise, indicateurs, jointures et requêtes de regroupement).

Enjeux du cours : rendre autonome les étudiants sur la recherche et l’usage de données autour de problématiques géomarketing, faire « parler » la donnée, créer des indicateurs, veiller à la pertinence des données représentées.

Programme pédagogique : mise en situation autour d'une commande géomarketing impliquant la récupération, le traitement et la représentation de données. Selon l'avancée du cours, nous irons jusqu'à utiliser des fonctionnalités avancées de QGIS (SQL spatial) et Python (création de zones isochrones via une API et customisation du comportement de QGIS).

Le sommaire de droite et la navigation sous le texte vous permettent de vous déplacer dans ce tutoriel.

Beautiful SoupLet's go web scraping with Python and BeautifulSoup! Here BeautifulSoup will be able to extract formatted data from HTML and its CCS code. For confidentiality reasons, we will not name the parsed website, but a lot are built like that: pages containing record from a database use their ID in the URL. So you will to adapt the codes below to your own website and purposes.

We will use a complex website as example, where the IDs to guess are listed in a large pagination.

First, we will get the links to articles (with IDs in URLs) from all pages of the pagination, then we will store data in a CSV file, if interesting (we search emails). So we will do a loop in a loop, with a condition, but if the website you want to parse is simpler (without pagination), you will not need the first loop.

Libraries and receptacle

We start by importing some necessary libraries and creating the receptacle file for our data.

from bs4 import BeautifulSoup
import requests
import re
import csv
 
# CSV file to receive data
out_file = open('C:/python_projects/webscraping/email.csv', 'w', encoding='cp1252')
out_file.write("email" + "\n")

Cet article n'est pas l'article d'un spécialiste de Symfony. Je défriche ici les grandes possibilités du framework, dans sa version 4, en fusionnant/vulgarisant plusieurs tutos glânés sur internet. L'objectif est surtout de me construire un mémo d'apprentissage de Symfony 4, que je souhaite utiliser pour le déploiement de SCRUD plus ou moins complexes et d'API.

  • Testé en local sous Windows.
  • Wamp doit être installé, disposant d'une version de PHP 7 minimum.
  • Installez également Composer, en mode développeur, en lui mentionnant la dernière version de PHP pendant l'installation.

Composer est dorénavant indispensable pour démarrer un projet Symfony 4 (et l'Installer ne l'est plus). De même il n'est plus nécessaire de déclarer les dépendances dans le Kernel.

Il vous faudra redémarrer votre machine pour prendre en compte Composer. Ensuite la commande composer -v doit afficher des informations de version.

Intégrer PHP aux variables d'environnement Windows

Si ce n'est pas déjà fait (testez php -v) :

set PATH=%PATH%;C:\wamp\bin\php\php7.2.4

Ensuite la commande php -v doit afficher des informations de version.

Avant toute manipulation un peu tordue, on ne le répétera jamais assez : les SIG ne sont pas autosuffisants. Cependant, parfois, ils peuvent créer de la donnée seulement à partir d'autres données. De la donnée nouvelle, plus riche que la donnée d'origine ou du moins, valorisée à partir de croisement de données (data mining).

carteMise en situation, dans le domaine de... allez, du géomarketing : vous êtes géomaticien, dans une société de géomarketing. Les développeurs ont déjà mis au point un programme accrochant les IRIS environnants à partir d'un point en entrée et selon plusieurs facteurs (géographiques, statistiques, données clients...). Il s'agit donc d'un programme de calcul de zones isochrones1, qui comme tous programmes de zones isochrones, peut être amélioré.

Le programme existe et marche déjà très bien. Il fait l'objet d'une application web facturée 15 000 € l'abonnement annuel (ou mensuel, je ne sais plus...). À ce prix là bien sûr, les indicateurs utilisés pour dessiner les zones ne prennent en compte qu'un nombre restreint de variables. Si le client veut plus de précision, ou une actualisation des données plus régulière, il doit souscrire un abonnement plus cher.