Last active
December 20, 2015 02:49
-
-
Save neovov/6059471 to your computer and use it in GitHub Desktop.
Modification du tableau listant les bibliothèques permettant de parser les formats de données (http://www.la-grange.net/2013/07/04/data-formats)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| format | python | php | ruby | javascript | | |
| -------------------------------------------- |:---------------------------:|:-----------------:|:----:| ----------------:| | |
| Internet Message Format (email) | email.parser | ? | ? | ? | | |
| JSON | json | natif (PHP 5.2) | ? | natif (ES5) | | |
| Base64 | base64 | natif (PHP 4) | ? | natif (?) | | |
| Multipurpose Internet Mail Extensions (MIME) | quopri | natif (PHP 5.3) | ? | mime (Node.JS) | | |
| XML | elementtree | libxml (natif) | ? | natif | | |
| XPath | elementtree (partiel) | libxml (natif) | ? | natif | | |
| RDF/XML | absent | EasyRDF | ? | rdf (Node.js) | | |
| RDF/turtle | absent | EasyRDF | ? | rdf (Node.js) | | |
| ISO date | datetime.strptime (presque) | natif (PHP 4) | ? | natif | | |
| INI (Win) | ini | natif (PHP 4) | ? | ini (Node.js) | | |
| CSV | csv | natif (~PHP 5.1) | ? | csv (Node.js) | | |
| plist (Mac) | plistlib | plist | ? | plist (Node.js) | | |
| URL | urllib.parse | natif (PHP 4) | ? | natif (Node.js) | | |
| HTML | html.parser | libxml (natif) | ? | natif | | |
| robots.txt | urllib.robotparser | robots-txt-parser | ? | robots (Node.js) | |
Pardon, j'aurai dû préciser. Je n'ai pas pris le temps d'ajouter des liens non plus.
- natif (PHP) signifie que c'est présent par défaut dans les binaires de PHP, le développeur n'a rien de particulier à faire.
- libxml (natif) signifie qu'il faut passer par une bibliothèque, mais qu'elle est généralement ajoutée lors de la compilation des binaires de PHP.
- EasyRDF est une bibliothèque à télécharger : http://www.easyrdf.org/
- plist et robots-txt-parser sont également des bibliothèques à télécharger via le gestionnaire de paquets de PHP : https://packagist.org/packages/rodneyrehm/plist & https://packagist.org/packages/webignition/robots-txt-parser
J'ai hésité pour Node.js. Le « problème » est qu'on peut se servir de JavaScript côté client et serveur.
Quelques petites précisions :
- Le base64 est natif dans les navigateurs (fonctions atob et btoa). On peut sûrement trouver des bibliothèques sur NPM dédié pour Node.js
- J'ai déduis que le support de XML/XPath/HTML était natif sous Node.js mais je ne m'en suis jamais servi. Comme c'est « natif » côté navigateur, je suppose que ça l'est également côté serveur (ça serait dommage pour un langage orienté web sinon)
Dernière remarque : Parfois on peut trouver plusieurs bibliothèques dédié à un format. Certaines ne proposent que du parsing alors que d'autres proposent de l'écriture également.
merci. Je vais pouvoir compléter.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Quelle est la différence entre
EasyRDF est-il dans la bibliothèque par défaut de PHP ?
Pour node.js, il s'agit d'un framework. Il faudrait une colonne supplémentaire peut-être. Et de nombreux modules ne sont pas installés par défaut. :)