diff --git a/README.md b/README.md index da773c4..7f33d3b 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,7 @@ 1. [Linux/Unix/MacOS](#unix) 2. [Windows](#win) 3. [Usage](#usage) +4. [TODO](#todo)
@@ -19,6 +20,17 @@ Il est ensuite possible d'en éditer une carte, sur Qgis par exemple, en retrouv Carte des périls de Marseille-Centre

+Le code repose sur le projet libre de webcrawler [Scrapy](https://scrapy.org/) écrit en python. + +**Structure :** + +- `crawler/perils/spiders/scraperil.py` : Le crawler initial qui récupère toutes les données brutes du site par des requêtes via sélecteurs XPATH (similaires aux selecteurs CSS mais plus polyvalents) + +- `crawler/perils/items.py` : Les items dans lesquels sont inscrites les données brutes + +- `crawler/perils/splittermidware.py` : La pipeline de tri des données brutes au moyen de regex et d'un peu de python rudimentaire. Le code est commenté pour inspection. + +
# Installation @@ -55,7 +67,7 @@ Mise en place d'un environnement virtuel pour scrapy dans lequel seront install Screenshot de l'installation des build-tools pour Windows

-- [Librairie libxml2](https://www.lfd.uci.edu/~gohlke/pythonlibs/#libxml-python) (documentation en haut de page) +- [Librairie libxml2](https://www.lfd.uci.edu/~gohlke/pythonlibs/#libxml-python) (documentation en haut de page, à priori ça s'installe via pip mais j'ai pas eu besoin, faudrait voir sur un windows vierge ce que ça donne) ### Environnement virtuel et modules python @@ -80,4 +92,11 @@ On exporte l'output du crawler dans un fichier csv. D'autres formats sont disponibles (json, xml, etc.) plus d'informations sur la [documentation de scrapy](https://docs.scrapy.org/en/latest/topics/feed-exports.html) cd src - scrapy crawl perils -O perils.csv \ No newline at end of file + scrapy crawl perils -O perils.csv + +
+ +# TODO + +- Permettre la possibilité de deux outputs : un csv pour Qgis et un csv pour consultation et mise en page. Pour le moment les deux sortent sur un même csv parce-que j'ai pas pris le temps de m'en occuper. +- installer ça sur un serveur et faire crawler quotidiennement puis mettre sur une base de données (mariadb) \ No newline at end of file