Closed poudro closed 2 years ago
Bonjour,
L'instance hébergée ne supporte pas actuellement les paramètres quote
et delimiter
.
La détection des paramètres de parsing CSV est réalisée au niveau d'un autre composant.
La séparateur est détecté automatiquement, et le caractère "quote" est toujours "
.
Bonjour @jdesboeufs
Merci pour la réponse ! Serait-il possible d'apporter de l'aide sur le composant qui fait le parsing pour ajouter cette fonctionnalité ? Si oui, pourriez-vous m'indiquer où elle se trouve ?
C'est cette fonction : https://github.com/BaseAdresseNationale/api-geocode/blob/master/lib/csv.js#L52
Sachant qu'ensuite le parsing est assuré par csv-parser
.
Nous avons ajouté ce pré-parsing car le parsing de addok-csv est beaucoup trop fragile.
Merci !
Bonjour,
Nous sommes tombés sur un souci lié à la detection automatique du dialect du csv (ici https://github.com/addok/addok-csv/blob/master/addok_csv/__init__.py#L63).
Je suis conscient que cette issue n'est pas forcement de votre ressort, mais je ne sais pas exactement ou la signaler autrement.
Le probleme surviens, pour nous, quand il y a des entrees qui contiennent des
'
(single quote).Par exemple
On a aura alors
dialect.delimiter = ' '
(espace) etdialect.quotechar = "'"
(single quote), ce qui est faux puisque les vrais valeurs devraient etre,
et"
.Cela aura pour consequence de mal parser le flux en entree et de generer un csv mal formatte en sortie, voir de rendre le parsing impossible.
Avec les parametres par defaut, en self hosting, un exemple de requete etant:
on aura l'erreur
En faisant une requete sur
api-adresse.data.gouv.fr
on aura le csv envoye en retour.De plus, dans la version self hosted d'Addok, il est possible d'override ces valeurs en passant les parametres
delimiter
etquote
(d'ailleurs, il manque l'info pourquote
dans la doc, qui est pourtant bien present dans le code, cf https://github.com/addok/addok-csv/blob/master/addok_csv/__init__.py#L75-L77).Exemple de requete:
Par contre, dans la version hosted sur
api-adresse.data.gouv.fr
on n'aura toujours pas le retour escompte, meme avec les parametres bien fournis.Comment faire pour passer ces parametres
delimiter
etquote
a l'API data.gouv ?