-
-
Notifications
You must be signed in to change notification settings - Fork 41
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Import / Identification - Erreur encodage Python sur QGIS 2.18.10 #106
Comments
It seems I can find a workaround by replacing in my code L 461 of cadastre_dialogs.py @jusabatier Can you confirm this workaround allows you to import data ( AND have good accentuated chars visibles in tables and in the plugin dialogs ) ? |
Nope, I replaced this line with your code in |
Moreover, it seems like your stacktrace is different, the one I have is :
The problem seems to be in cadastre_import.py |
yep, I will try to adapt the line "/home/jusabatier/.qgis2/python/plugins/cadastre/cadastre_import.py", line 1115 I would find a way to try catch and use one or other method to avoid bugs in versions prior and after the QGIS commit |
I confirm that replace cadastre_import.py line 1115 : solved the problem and allow to perform a successful import in PostGIS database |
Ok. I will try to provide updated code as a workaround |
Bonjour, J'ai essayé de modifié cadastre_dialogs.py comme demandé mais ça ne fonctionne toujours pas, sous QGIS 2.18 comme 2.14... |
Il y a probablement 2 fichiers à modifier :
Et bien penser à relancer QGis après, pour moi ça a résolu le problème et l'import dans PostGIS s'est fait correctement en 2.18.10 |
Ça ne fonctionne pas, voici le message d'erreur : Traceback (most recent call last): Faut-il que je recharge la base cadastre du plugin ? Merci par avance, |
Après avoir fait les modification de mon dernier post, j'ai relancé QGis puis réimporté les données dans le schema PostGIS (eventuellement le supprimer puis recréer). Par la suite celle-cis se chargent sans soucis. |
Le commit 58beda1 doit régler le souci, et permettre au plugin Cadastre de fonctionner avec les version de QGIS avant et après le commit qgis/QGIS@14ab5eb Merci de télécharger la dernière version "master" du plugin depuis ce site et de vérifier si c'est bon |
Bug QGIS référencé par d'autres ici: |
Vu que cela concernait la version 2.18 de QGIS : doit-on fermer ce ticket @mdouchin ? |
on peut fermer. Le ticket n'est pas récent, un fix a été proposé (try catch si je me souviens...). On peut fermer, merci |
Bonjour,
J'ai fini par trouver comment corriger mon problème (la résolution de celui-ci est peut-être similaire) Dans le fichier QgisCadastrePlugin/cadastre/cadastre_import.py Lines 1015 to 1016 in 2b2c0e3
Voici le fix: with open(scriptPath, 'w', encoding='utf-8') as fout:
fout.write(data) La locale système ne doit pas être configuré comme il faut dans QGIS. # Explicitly open with ascii encoding:
# ❌ Error:
# UnicodeEncodeError: 'ascii' codec can't encode character '\u2122' in position 0: ordinal not in range(128)
with open('/tmp/test', 'w', encoding='ascii') as fout:
fout.write(u"\u2122")
# Open without encoding specified:
# ❌ Error or ✅ Works depending of system locale :
# UnicodeEncodeError: 'ascii' codec can't encode character '\u2122' in position 0: ordinal not in range(128)
with open('/tmp/test', 'w') as fout:
fout.write(u"\u2122")
# Explicitly open with utf-8 encoding:
# ✅ Works
with open('/tmp/test', 'w', encoding='utf-8') as fout:
fout.write(u"\u2122") Pour forcer la locale dans QGIS, j'ai ajouté la variable d'environnement
Je ne suis pas sûr qu'il faille garder ce paramétrage mais ca aide pour débugger. |
Constaté avec une récente version de QGIS 2.18.10 (et peut-être antérieure ?).
Suite au commit suivant qgis/QGIS@14ab5eb
The text was updated successfully, but these errors were encountered: