explications structure et code

main
p 3 years ago
parent b0300de137
commit b2d298108f

@ -4,6 +4,7 @@
1. [Linux/Unix/MacOS](#unix) 1. [Linux/Unix/MacOS](#unix)
2. [Windows](#win) 2. [Windows](#win)
3. [Usage](#usage) 3. [Usage](#usage)
4. [TODO](#todo)
<div id='intro'/> <div id='intro'/>
@ -19,6 +20,17 @@ Il est ensuite possible d'en éditer une carte, sur Qgis par exemple, en retrouv
<a href="./doc/img/map.jpeg"><img src="./doc/img/map.jpeg" width="1024" alt="Carte des périls de Marseille-Centre"></a><br><br> <a href="./doc/img/map.jpeg"><img src="./doc/img/map.jpeg" width="1024" alt="Carte des périls de Marseille-Centre"></a><br><br>
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.
<div id='install'/> <div id='install'/>
# Installation # Installation
@ -55,7 +67,7 @@ Mise en place d'un environnement virtuel pour scrapy dans lequel seront install
<img src="./doc/img/micrapsoft-visualstudio.jpg" height="320" alt="Screenshot de l'installation des build-tools pour Windows"><br><br> <img src="./doc/img/micrapsoft-visualstudio.jpg" height="320" alt="Screenshot de l'installation des build-tools pour Windows"><br><br>
- [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 ### Environnement virtuel et modules python
@ -81,3 +93,10 @@ D'autres formats sont disponibles (json, xml, etc.) plus d'informations sur la [
cd src cd src
scrapy crawl perils -O perils.csv scrapy crawl perils -O perils.csv
<div id='todo'/>
# 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)
Loading…
Cancel
Save