2017-03-17 27 views
0

我的問題應該是很簡單的回答不是一個自學成才的新手和我一樣的人......如何使用shp2pgsql

在這個頁面是關於函數在GIS/DB環境在使用一個的cheatsheet :http://www.bostongis.com/pgsql2shp_shp2pgsql_quickguide.bqg

我想創建一個腳本,讓用戶只需點擊它即可啓動該過程,並給出正確的數據。但我不明白如何使用它。它顯然不能在Python控制檯中工作,也不能直接在Windows控制檯中工作。它應該如何工作?這是什麼語言 ?

謝謝

回答

0

shp2pgsql確實是一個命令行工具。它隨PostgreSQL/PostGIS安裝(通常)一起提供,如果不能通過PATH變量訪問,通常可以從PostgreSQL安裝的/ bin-folder中運行。如果需要,您也可以自己在任何位置始終「從源代碼製作」程序。

編輯:

一種方法來建立一個腳本(獨立於你是否使用它QGIS自己的Python環境中或不)是使用蟒蛇subprocess(或使用os.system)模塊(檢查相關問題here )寫入shell並執行shp2pgsql。

通過腳本可以通過gdal/ogr模塊實現ogr2ogr(檢查this博客),稍微更復雜的解決方案(批處理)插入(多個)shapefile通過腳本。然而,這需要安裝gdal core library以及各自的Python綁定(至少在QGIS Python環境之外使用,它預裝了AFAIK),這可能會讓人感到厭煩。但是,一旦安裝正確,它就可以通過Python提供功能強大的(我敢說全能的)地理數據管理和操作工具集。

除此之外,我提供的blog鏈接還說明了在qgis 2.8工具箱中批量插入腳本/工具(它操作ogr2ogr)的實現......也許這可以幫助您,無論是直接工作還是(通過sourcecode)爲您指出創建自己的工具的方向。

+0

好的,謝謝。你有什麼線索可以創建一個插件,可以從QGIS內部訪問,用Python編程,最重要的是(這裏是我的問題)如何從Python腳本中調用shp2pgsql? –

+0

@GuiOmClair編輯我的答案 – ThingumaBob

+0

謝謝,它的工作 –