Я хотів би запустити кілька невеликих і простих скриптів python для QGIS (Mac) з "зовні" QGIS. Я маю на увазі в цьому контексті або звичайний командний рядок os (terminal.app), або навіть краще, безпосередньо з піднесеного тексту (текстовий редактор), але точно не через вбудовану консоль пітону QGIS.
Я читав різні підручники, наприклад, http://www.qgis.org/pyqgis-cookbook/intro.html#python-applications, і я можу отримати посилання на додаток QGIS, але, на жаль, не на qgis.utils.ifaceщось інше або глибше . Цей маленький фрагмент коду повинен, наприклад, роздрукувати ім'я активного шару ... ось що у мене є:
import sys
sys.path.append("/Applications/QGIS.app/Contents/Resources/python")
from qgis.core import *
import qgis.utils
print "helo" # console output: helo
QgsApplication.setPrefixPath("/Applications/QGIS.app/", True)
QgsApplication.initQgis()
print QgsApplication # console output: <class 'qgis.core.QgsApplication'>
print qgis.utils.iface # = console output: none
aLayer = qgis.utils.iface.activeLayer()
print aLayer.name()
QgsApplication.exitQgis()
Будь ласка, не відповідайте мені тепер, як створити плагін або щось інше "важке". Я просто шукаю швидкий простий спосіб зйомки скриптів із зручного текстового редактора до QGIS.
4. Тим часом мені доводиться жити2, що справді болить весь час,import scriptза яким слідуютьreload(script)і, звичайно, змінюються від мого редактора до QGIS. Я також перевірив плагін scriptrunner, який є багатообіцяючим, але тоді мені не вдалося потрапитиprint "debug value"на консоль QGIS. Чи знаєте ви, випадково, спосіб, як скрипт scriptrunner надрукувати щось на консолі QGIS? Велике дякую! Будемо чекати вашої відповіді, а потім закрийте питання!