from pymongo import Connection, GEO2D
from osgeo import ogr
# lecture du shapefile
driver = ogr.GetDriverByName('ESRI Shapefile')
shape_path="points.shp"
ds = driver.Open(shape_path, 0)
lyr = ds.GetLayer()
feat = lyr.GetNextFeature()
# connexion et création de la collection géospatiale
db = Connection().geo_example
db.places.create_index([("loc", GEO2D)])
# insertion du premier élément dans MongoDB
geom = feat.GetGeometryRef()
db.places.insert({"loc": [ geom.GetX(), geom.GetY()]})
# etc. avec la boucle du script de Paolo Corti