আমি এই বিষয়টির সুস্পষ্ট উত্তরের জন্য বেশ কিছুটা সময় ব্যয় করেছি এবং এখনও একা একা একক স্ক্রিপ্টে পাইকিজিআইআইএস অ্যাক্সেস করার আমার লক্ষ্যটি সত্যিই অর্জন করতে অক্ষম হয়েছি।
উত্তরের অংশগুলি বিভিন্ন বিভিন্ন প্রশ্ন জুড়ে সরবরাহ করা হয়েছে যেমন:
কিউজিআইএস এবং পরিবেশের ভেরিয়েবলগুলি ব্যবহার করে স্বতন্ত্র অ্যাপ্লিকেশন
pyQgis একা একা স্ক্রিপ্ট, ভেক্টর লোডিং ত্রুটি
পাইকিজিআইএস ব্যবহার করে একক পাইথন স্ক্রিপ্ট লিখছেন?
আমি যে সর্বাধিক তুরস্কের উত্তর পেয়েছি তা এখানে জিন সরবরাহ করেছেন ।
আমি বিশেষত যা সম্পর্কে আগ্রহী, সেই স্ক্রিপ্টগুলি লিখতে সক্ষম হচ্ছিল যা আরকিপি এবং পাইকিজিআইএস উভয়কেই কল করতে পারে। আমি পাইকজিআইএস কুকবুক ডকুমেন্টেশন অনুসারে PATH এবং পাইথনপথ উভয় সিস্টেম ভেরিয়েবল সেট করেছি:
C:\OSGeo4W\apps\qgis\bin,%PATH%;C:\Python27\ArcGIS10.2\Lib\site-packages\PyQt4;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\;C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\;C:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\
এবং
C:\OSGeo4W\apps\qgis\python; C:\OSGeo4W\apps\Python27\Lib\site-packages
যথাক্রমে।
আমি এই স্ক্রিপ্ট দিয়ে শুরু করছি:
from qgis.core import *
QgsApplication.setPrefixPath("C:\OSGeo4W\bin\qgis.bat", True)
QgsApplication.initQgis()
# or your solution
# read a shapefile
layer = QgsVectorLayer('H:\DATA\Airfields_AB.shp', 'Airfields', 'ogr')
layer.isValid()
True
# loop through layer
for elem in layer.getFeatures():
geom= elem.geometry()
attr =elem.attributes()
(processing)
আমি ব্যাচ স্ক্রিপ্টগুলি এড়াতে চাইছি যা উপযুক্ত সেটিংস সেট করে, বরং পাইথন স্ক্রিপ্টের মধ্যে থেকে তাদের কল করে। আমার জন্য সর্বোত্তম দৃশ্যপটটি পূর্ববর্তী কোডটি চালানোর জন্য আর্কজিআইএস 10.2 ফোল্ডারে আইডিএল ব্যবহার করা হবে। আমি আরকিজিআইএস 10.2 এবং কিউজিআইএস 2.01 সহ একটি উইন্ডোজ 7 মেশিন ব্যবহার করছি।
বর্তমানে এই কোডের ফলাফল:
Traceback (most recent call last):
File "F:\Users\...\PyQGIS_Test_01.py", line 1, in <module>
from qgis.core import *
ImportError: DLL load failed: The specified module could not be found.