file_table_reader/qgis_bootstrap.py

76 lines
1.7 KiB
Python
Raw Normal View History

2025-11-25 09:39:21 +00:00
# import os
# import sys
# QGIS_APP = "/Applications/QGIS-LTR.app/Contents"
# QGIS_PREFIX = f"{QGIS_APP}/Resources"
# # ==== FIX VERY IMPORTANT ====
# os.environ["QGIS_PREFIX_PATH"] = QGIS_PREFIX
# os.environ["PROJ_LIB"] = f"{QGIS_PREFIX}/proj"
# os.environ["GDAL_DATA"] = f"{QGIS_PREFIX}/gdal"
# os.environ["QT_PLUGIN_PATH"] = f"{QGIS_PREFIX}/plugins"
# # =============================
# os.environ["QT_QPA_PLATFORM"] = "offscreen"
# # Python path
# sys.path.append(f"{QGIS_PREFIX}/python")
# sys.path.append(f"{QGIS_PREFIX}/python/plugins")
# from qgis.core import QgsApplication
# from qgis.analysis import QgsNativeAlgorithms
# import processing
# from processing.core.Processing import Processing
# def start_qgis():
# qgs = QgsApplication([], False)
# qgs.initQgis()
# # === WAJIB: initialize processing ===
# Processing.initialize()
# qgs.processingRegistry().addProvider(QgsNativeAlgorithms())
# return qgs
2025-11-25 08:33:38 +00:00
import os
import sys
# ==== Linux QGIS installation prefix ====
2025-11-25 09:39:21 +00:00
QGIS_PREFIX = "/usr/bin/qgis"
2025-11-25 08:33:38 +00:00
os.environ["QGIS_PREFIX_PATH"] = QGIS_PREFIX
os.environ["PROJ_LIB"] = "/usr/share/proj"
os.environ["GDAL_DATA"] = "/usr/share/gdal"
2025-11-25 09:39:21 +00:00
os.environ["QT_PLUGIN_PATH"] = "/usr/lib/qt/plugins"
2025-11-25 08:33:38 +00:00
2025-11-25 09:39:21 +00:00
# Python path
sys.path.append("/usr/lib/python3/dist-packages")
sys.path.append("/usr/lib/python3/dist-packages/qgis")
sys.path.append("/usr/lib/python3/dist-packages/qgis/plugins")
2025-11-25 08:58:08 +00:00
2025-11-25 09:12:20 +00:00
2025-11-25 08:33:38 +00:00
from qgis.core import QgsApplication
from qgis.analysis import QgsNativeAlgorithms
2025-11-25 09:39:21 +00:00
2025-11-25 08:33:38 +00:00
import processing
from processing.core.Processing import Processing
def start_qgis():
qgs = QgsApplication([], False)
qgs.initQgis()
Processing.initialize()
qgs.processingRegistry().addProvider(QgsNativeAlgorithms())
2025-11-25 09:39:21 +00:00
return qgs