Sử dụng ogr2ogr để chuyển đổi GML thành shapefile trong Python?


22

Tôi đang cố gắng chuyển đổi GML thành shapefile ESRI bằng tiện ích ogr2ogr trong tập lệnh python.

Tôi đã cài đặt thành công gói GDAL / OGR qua osgeo nhưng hiện tôi đang gặp khó khăn trong việc tìm / hiểu bất kỳ chi tiết nào về cú pháp sử dụng ogr2ogr trong python.

Sau khi nhập ogr, tất cả những gì tôi tìm thấy là ogr2ogr -f "ESRI Shapefile" output.shp input.gml

Làm thế nào để tôi sử dụng điều này trong python? Có đơn giản như chỉ định các tập tin đầu vào và đầu ra?

Tất cả mọi thứ tôi thử tôi chỉ nhận được lỗi cú pháp. Bất kỳ con trỏ đúng hướng để giúp tôi bắt đầu sẽ là tuyệt vời.


Bạn đang gặp phải lỗi gì? và phiên bản GDAL của bạn là gì? vui lòng chia sẻ để giúp bạn ..
Aragon

Câu trả lời:


35

Lấy một bản sao của cổng Python ogr2ogr, được phân phối với tải xuống mã nguồn GDAL hoặc có thể tìm thấy ở đây: http://svn.osgeo.org/gdal/trunk/gdal/swig/python/samples/ogr2ogr.py

Khi bạn nhập mã đó vào mã của mình, bạn có thể sử dụng nó như thế này:

import ogr2ogr

def main():
  #note: main is expecting sys.argv, where the first argument is the script name
  #so, the argument indices in the array need to be offset by 1
  ogr2ogr.main(["","-f", "KML", "out.kml", "data/san_andres_y_providencia_administrative.shp"])

Đây là ví dụ hoạt động duy nhất mà tôi thấy ở bất cứ đâu.
bozdoz


5

Đọc lên os.system hoặc os.popen hoặc quy trình con . Hoặc chỉ sử dụng ogr2ogr và shell của bạn. Ngay cả cmd.exe (Windows) cũng cho phép bạn lặp qua các tệp đầu vào.


1

ogr2ogrthể tìm thấy giải thích chi tiết về cách thay thế công cụ dòng lệnh bằng API OGR Python tại đây .

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.