Tôi đang cố gắng truy cập bộ dữ liệu vectơ trong Cơ sở dữ liệu địa lý tệp ESRI bằng Python + GDAL. Tôi đã biên dịch thành công GDAL với API cơ sở dữ liệu địa lý tệp. Trình điều khiển FileGDB hoạt động chính xác kể từ khi nhập
ogrinfo --formats
hiển thị trình điều khiển FileGDB và nhập
ogrinfo myfilegdb.gdb
cung cấp cho tôi thông tin chính xác về nội dung của cơ sở dữ liệu.
Tuy nhiên, tôi không thể tìm ra cách truy cập nội dung trong Python. Để truy cập một shapefile, tôi sẽ viết:
driver = ogr.GetDriverByName('ESRI Shapefile')
ds = driver.Open('shapefile.shp', 0)
Khi truy cập một lớp tính năng FileGDB, tôi sẽ giả sử sử dụng các lệnh:
driver = ogr.GetDriverByName('FileGDB')
ds = driver.Open('myfilegdb.gdb/feature_class', 0)
nhưng điều này dường như không hoạt động vì nó không thể xác định / định vị tập dữ liệu. Có ai biết cách gọi các lớp đối tượng riêng lẻ từ ESRI FileGDB không.
Tôi đang sử dụng Python 2.7, GDAL 1.9.1, filegdb api 1.2 trên Ubuntu 12.04 x64. Cảm ơn cho bất kỳ đề nghị!