Evet, GDAL Yardımcı Programlarını Python içinden arayabilirsiniz. Yardımcı programın kendi başına bir exe veya bir python kodu parçası olmasına bağlı olarak yaklaşımda çok küçük farklılıklar vardır. Her iki durumda da alt işlem modülünü kullanmanız gerekse de :
import subprocess
# constants
gdalTranslate = r'C:\Program Files\GDAL\gdal_translate.exe'
src = r"C:\somefolder\somefile.tif"
dst = r"C:\someotherfolder\myresul.tif"
cmd = "-ot float32 -outsize 25 25" # just for example!
# see note below
def youCanQuoteMe(item):
return "\"" + item + "\""
fullCmd = ' '.join([gdalTranslate, cmd, youCanQuoteMe(src), youCanQuoteMe(dst)])
subprocess.popen(fullCmd)
Yollarımın üzerine kaçış tırnak işaretleri eklediğimi fark edeceksiniz. Bunun nedeni, Windows’ta, özellikle boşluk içeren veya '\' karakterlerinden birinin yanlışlıkla kaçan bir karakter çıkardığı yollar ile ilgili sorun yaşıyorum. Bu yüzden, sadece aspec'teki doğru yolu korudum.
Python yardımcı programlarından birini kullanıyorsanız, alt işlem komut dizesinin başlangıcındaki exe'niz dışında şimdi aynı şeyleri yapın "C: \ python32 \ python.exe" (veya hangi sürümüne sahipseniz) ve ikinci öğeniz kullanmak istediğiniz python yardımcı programını kullanın.
Açıkçası sabit kodlanmış sabitleri kullanmak yerine dosya sisteminizi yineleyebilirsiniz, ancak bu sadece bir örnek.
EDIT - QGIS eklentileri için genelleme QGIS
, başlangıçta bir dizi çevre değişkeni oluşturur / değiştirir. Böylece, yukarıdaki örnekte kodlanmış yollar yerine bunları (bkz. Ayarlar-> Seçenekler-> Sistem) kullanarak GDAL kitaplıklarına / yardımcı programlarına genelleştirilmiş yol değişkenleri oluşturabilirsiniz.