I should point out that I'm a noob.

I'm playing around with making a python gui app and believe I have opened an ESRI GDB file/folder using: with fiona.open(GDBPath, 'r') as sourceGeoData

What I'd like to do is inspect / parse through the sourceGeoData to verify I have indeed opened up / connected with the GDB. I don't know if this is still done via Fiona or if I must pass this on to Shapely which is what I believe I need to use for ultimately doing some spatial joins.

What I don't follow is the use of drivers I see sprinkled through Google searches I've done. How is this related?

1 Answer 1


If fiona.open(gdb_path) doesn't raise an exception, you've got an open dataset. You can print out its metadata for more verification.

with fiona.open(gdb_path) as src:

Shapely is a computational geometry library: buffers, intersections, &c. It doesn't do spatial joins but can be used to help your own join implementations.

  • thank you. I used your snippet example and I do see the metadata. If Shapely doesn't do spatial joins, what open source python-centric package would you recommend I use to do spatial joins?
    – George
    May 12, 2016 at 15:56
  • Shapely/Fiona doesn't do spatial joins out of the box but instead provides you with the tools to do them yourself. If you want something higher level you could try GeoPandas (which depends on Shapely). See the following answer for an example of a spatial join. gis.stackexchange.com/questions/190903/… May 16, 2016 at 12:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.