#1 Sat 30 January 2021 13:48
- labriki
- Juste Inscrit !
- Date d'inscription: 10 Jan 2013
- Messages: 4
QGIS: Convertir un CSV en SHP en utilisant pyqgis
Bonjour,
Je cherche un code me permettant de d'appeler et de traiter un csv contenant des informations (coordonnées entre autres) en utilisant pyqgis dans la console des dernières versions de QGis. Le code que voici (trouvé dans le web) se heurte aux changements de python pour les dernières versions QGis:
Code:
from qgis.core import * from processing.tools.vector import VectorWriter Input_Table = 'path_to_the_csv/input.csv' # set the filepath for the input CSV lon_field = 'point_longitude' # set the name for the field containing the longitude lat_field = 'point_latitude' # set the name for the field containing the latitude crs = 4326 # set the crs as needed Output_Layer = 'path_to_the_output/output.shp' # set the filepath for the output shapefile spatRef = QgsCoordinateReferenceSystem(crs, QgsCoordinateReferenceSystem.EpsgCrsId) inp_tab = QgsVectorLayer(Input_Table, 'Input_Table', 'ogr') prov = inp_tab.dataProvider() fields = inp_tab.pendingFields() outLayer = QgsVectorFileWriter(Output_Layer, None, fields, QGis.WKBPoint, spatRef) pt = QgsPoint() outFeature = QgsFeature() for feat in inp_tab.getFeatures(): attrs = feat.attributes() pt.setX(float(feat[lon_field])) pt.setY(float(feat[lat_field])) outFeature.setAttributes(attrs) outFeature.setGeometry(QgsGeometry.fromPoint(pt)) outLayer.addFeature(outFeature) del outLayer
Le code provient de l'adresse suivante:
https://howtoinqgis.wordpress.com/2017/ … ng-python/
Hors ligne