Magazine Internet

Transformer la constitution Tunisienne en fichiers CSV

Publié le 12 janvier 2014 par Aymen |eon|
Hier j'ai posé une question sur Twitter :
besoin des articles de la la constitution sous format standarisé xml, json, csv .. etc ? #TnConstit #TnAC #RTPlease
— Aymen AMRI eon (@eon01) 11 Janvier 2014
Je vais y répondre :-)
J'ai scrappé le contenu de marsad.tn avec un script python, qui va mettre les articles dans 5 fichiers CSV (lien de téléchargement).
Transformer la constitution Tunisienne en fichiers CSV
Le script est le suivant :
#!/usr/bin/python
# -*- coding: utf-8 -*-
from bs4 import BeautifulSoup
import urllib2
__author__ = "Aymen Amri"
__email__ = "[email protected]"
for counter in range (1, 6):
   counter = str(counter)
   baseUrl="http://www.marsad.tn/constitution/4/chapitre/"
   url = baseUrl + counter
   constFile = urllib2.urlopen(url)
   constHtml = constFile.read()
   soup = BeautifulSoup(constHtml)
   constArt = soup.find_all("div")
   articles = soup.findAll('div', { "class" : "clear texte" })
   titles = soup.findAll('h4', { "class" : "clearfloat" })
   print "."* int(counter)
   import csv
   fileName= counter +".csv"
   w = csv.writer(open(fileName, "w"))
   for article, title in zip(articles, titles):
      textTitle = "".join(title.findAll(text=True))
      textArticle = "".join(article.findAll(text=True))
      out = [textTitle.encode('utf-8'), textArticle.encode('utf-8')]
      w.writerow(out)
Exécuter ce code va créer ou écraser des fichiers, chacun d'entre eux sera consacré à un chapitre:
1.csv pour le premier chapitre, 2.csv pour le deuxième et ainsi de suite.
 Le résultat sera formaté comme suit:
الفصل 1,"تونس دولة حرّة، مستقلّة، ذات سيادة، الإسلام دينها، والعربية لغتها، والجمهورية نظامها.
لا يجوز تعديل هذا الفصل. "
الفصل 2,"تونس دولة مدنية، تقوم على المواطنة، وإرادة الشعب، وعلوية القانون.
لا يجوز تعديل هذا الفصل."
الفصل 3,الشعب هو صاحب السيادة ومصدر السلطات، يمارسها بواسطة ممثليه المنتخبين أو عبر الاستفتاء.
الفصل 4,"علم الجمهورية التونسية أحمر، يتوسطه قرص أبيض به نجم أحمر ذو خمسة أشعة يحيط به هلال أحمر حسبما يضبطه القانون.

Vous pouvez trouver ce petit script sur gist.github.com et pour le téléchargement c'est par ici .
Pour l’exécuter, python est essentiel bien sûr, ainsi que beautifulsoup4 :
# apt-get install python-bs4
 
Ensuite :
$ chmod + x dostour.py
$ python dostour.py
Cheers .
photo via

Retour à La Une de Logo Paperblog

A propos de l’auteur


Aymen |eon| 867 partages Voir son profil
Voir son blog

l'auteur n'a pas encore renseigné son compte l'auteur n'a pas encore renseigné son compte

Dossiers Paperblog

Magazines