একা একা একা পাইকিজিআইএস স্ক্রিপ্ট লেখার সময় qgis.core আমদানিতে সমস্যা


18

আমি উইন্ডোজ in তে একা একা পাইথন স্ক্রিপ্ট লেখার চেষ্টা করছি যা qgis.core এবং অন্যান্য বিভিন্ন Qgis লাইব্রেরি ব্যবহার করে।

আমি এই বিষয়টিতে এখানে একটি পুরানো প্রশ্ন পেয়েছি: পাইকিজিআইএস ব্যবহার করে স্ট্যান্ডেলোন পাইথন স্ক্রিপ্টগুলি লিখছি? এবং এখানে পরামর্শটি ব্যবহার করে তার পরামর্শ অনুসরণ করছিলেন: http://docs.qgis.org/testing/en/docs/pyqgis_developer_cookbook/intro.html#python-applications

প্রস্তাবিত কোডটি হ'ল:

set PYTHONPATH=c:\qgispath\python

অনুসরণ করেছে:

set PATH=C:\qgispath;%PATH%

আমি দেখতে পেয়েছি যে আইডিএল "ভিক্ষার সময় সেটটি পছন্দ করে না, তাই আমার কোডটি এর মতো দেখায়:

PYTHONPATH="C:\OSGeo4W64\apps\qgis\python"
PATH="C:\OSGeo4W64\apps\qgis\python\qgis\core;%PATH%"
import qgis.core

এবং আমি পেয়েছি:

Traceback (most recent call last):
  File "<pyshell#15>", line 1, in <module>
    import qgis.core
ImportError: No module named qgis.core

আমি শেষে%% PATH% "মুছে ফেলার অন্তর্ভুক্ত সম্পর্কে যে পথগুলি ভাবতে পারি তার প্রতিটি প্রকারের চেষ্টা করেছি (যা কিছুটা অতিমাত্রায় দেখায়) তবে আমি আর কোনও তথ্য সন্ধান করতে সক্ষম হইনি anyone আমার যেখানে থাকতে পারে এমন কারও কি ধারণা আছে? ভুল করছো?

সম্পাদনা করুন:

লুইজি পিরেলির মন্তব্য দেখার পরে আমি এখন চেষ্টা করেছি:

>>> PYTHONPATH="C:/OSGEO4~1/apps/qgis/./python\qgis"
>>> import qgis.core

Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    import qgis.core
ImportError: No module named qgis.core
>>> PATH="C:\OSGeo4W64\apps\qgis\python\qgis\core;%PATH%"
>>> import qgis.core

Traceback (most recent call last):
  File "<pyshell#3>", line 1, in <module>
    import qgis.core
ImportError: No module named qgis.core
>>> PATH="C:/OSGEO4~1/apps/qgis/./python\qgis\core;%PATH%"
>>> import qgis.core

Traceback (most recent call last):
  File "<pyshell#6>", line 1, in <module>
    import qgis.core
ImportError: No module named qgis.core
>>> 

আপনি কীভাবে আপনার সমস্যার মুখোমুখি হচ্ছেন সেটির রূপরেখাটি কীভাবে আপনার প্রশ্নের শিরোনামটি সংশোধন করতে পারেন?
এসএস_বিদ্রোহী

পাইথনপথকে এমন মান হিসাবে সেট করুন যা আপনি QGIS পাইথন কনসোলে "কিগিস" টাইপ করতে পারেন ... মানটি কী? আমার ক্ষেত্রে: <মডিউল 'qgis' থেকে 'সি: / OSGEO4 ~ 1 / অ্যাপস / qgis-দেব /./ পাইথন \ qgis_ init_ .pyc'> => আমি কোনো PYTHONPATH পাথ যোগ করার জন্য করেছি: "সি: / ওএসজিইও 4 ~ 1 / অ্যাপস / কিগিস-ডেভ / / / পাইথন \ কিগিস "
লুইজি পিরেলি

শিরোনাম সংশোধিত হয়েছে, ধন্যবাদ, আমি এটি চেষ্টা করব এবং প্রশ্নের মূল
সংস্থায়

1
তবুও ভাগ্য নেই, আমি ফলক এবং পাইথনপথের বহু অনুমতি ব্যবহার করার চেষ্টা করেছি।
ব্যবহারকারী 24956

উত্তর:


12

আপনি যদি ওএসজিও 4 ডাব্লু এর মাধ্যমে কিউজিআইএস ইনস্টল করে থাকেন তবে আমি আপনাকে এই কাজের প্রবাহ অনুসরণ করার পরামর্শ দিই (আমি এটি উইন্ডোজ just এ সবেমাত্র পরীক্ষা করেছি):

  1. OSGeo4W শেলটি খুলুনStart->All programs->OSGeo4W->OSGeo4W Shell

  2. পরিবেশের ভেরিয়েবল সেট করুন । আমার পছন্দের পথ চালানো হয় এই ব্যাট ফাইল : (2016.11.03 আপডেট এই ব্যাট ফাইল OSGeo4W শেল থেকে)। আপনি দেখতে পাচ্ছেন, ফাইলটি পরিবেশের পরিবর্তনশীলগুলি এইভাবে সেট করে:

    set PYTHONPATH=%OSGEO4W_ROOT%\\apps\\qgis\\python
    set PATH=%OSGEO4W_ROOT%\\apps\\qgis\\bin;%PATH%

    অবশ্যই, আপনার নিজের দ্বারা এটি যাচাই করা উচিত যে path পাথগুলি আপনার ওএসে বিদ্যমান এবং প্রয়োজনে সেগুলি সামঞ্জস্য করুন।

    সুতরাং, .bat ফাইলটি ডাউনলোড করুন এবং এটি OSGeo4W শেল থেকে অ্যাক্সেস করে এবং ENTER টিপে চালিত করুন।

    এখানে চিত্র বর্ণনা লিখুন

  3. নিম্নলিখিত একটি পদ্ধতির দ্বারা পাইকিজিআইএস লাইব্রেরি আমদানি করুন:

    ক। পাইথন ইন্টারপ্রেটার প্রবেশ করান। pythonওএসজিও 4 ডাব্লু শেল চালান এবং ম্যানুয়ালি লাইব্রেরি আমদানি করুন।

    এখানে চিত্র বর্ণনা লিখুন

    খ। পাইথন স্ক্রিপ্ট কার্যকর করুন। python my_pyqgis_script.pyOSGeo4W শেল চালান in আমি খুব সহজ একটি দিয়ে শুরু করব ।

    এখানে চিত্র বর্ণনা লিখুন

কাজের প্রবাহ কয়েক বছর আগে জিওটাক্সে পোস্ট হয়েছিল (স্প্যানিশ ভাষায়) এবং এখনও চলছে। যেমন আপনি দেখতে পাচ্ছেন, আমি পাইথন স্ক্রিপ্টে পরিবেশের ভেরিয়েবলগুলি অন্তর্ভুক্ত করি না, তবে সেগুলি ওএসজিও 4 ডাব্লু শেলের মধ্যে সেট করব।


ওহে! সে সম্পর্কে আমার সন্দেহ আছে। কেন var_entorno_osgeo4w.bat? আমি এই সমস্ত লাইন করেছি কিন্তু এই অংশে আমাকে একটি ত্রুটি দেয়। এছাড়াও আমি এই সহায়তা foruns এ পড়েছি এবং আমি এখনও আমদানি qgis.core ত্রুটি পেয়েছি (osgeo4w শেলের মধ্যে চালানো)।
বার্বারা ডুয়ার্টে

কারণ সেই ফাইলটির নাম যা আমি আপনাকে পরিবেশের ভেরিয়েবল সেট করতে সরবরাহ করছি। সুতরাং, আপনি সেই ফোল্ডারে যান যেখানে। .Bat ফাইলটি অবস্থিত (আপনি যে চিত্রগুলিতে এটি দেখতে পেয়েছেন সেখানে C:\dllo) ফাইলটির নাম লিখে এবং এন্টার টিপুন .bat ফাইলটি চালান।
জার্মানি ক্যারিলো

আমি উপরের সমাধানটি ব্যবহার করার চেষ্টা করেছি - আমি my_pygis_script.py চালানোর চেষ্টা করেছি এবং একটি আমদানি ত্রুটি পেয়েছি: Qgis.core নামে কোনও মডিউল নেই। আমি এটা কিভাবে ঠিক করবো?
kflaw

আমি পাইগ্রিপেক্টারে কিগিস.কম আমদানি করার চেষ্টাও করেছি এবং আমি আরও একটি আমদানি ত্রুটি পেয়েছি: সিপ নামে কোনও মডিউল নেই
kflaw

1
আমি যদি এখানে প্রস্তাবিত পদ্ধতিটি চেষ্টা করি তবে আমি 'qgis.core নামে কোনও মডিউল পাই না।' আমি কিগিস / বিনের মধ্যে পাইথন.এক্সই যদি দোভাষী হিসাবে ব্যবহার করি তবে আমি যখন 'Qgis.core' আমদানি করার চেষ্টা করব তখন আমি 'সাইটের কোনও মডিউল নামক সাইট' ত্রুটি পাই না। পাইকগিস ব্যবহার করার চেষ্টা করে আমি অনেক ঘন্টা নষ্ট করেছি।
আলেকজান্ডার

6

আমি সবেমাত্র একই ধরণের সমস্যা নিয়ে কুস্তি করেছি এবং ওএসজিও 4 ডাব্লু \ বিন ফোল্ডারে পাইথন-কিগিস.ব্যাট নামে একটি ব্যাচ ফাইলটি লক্ষ্য করেছি । এটি উইন্ডোজ 10 এ কিউজিআইএস 2.18.15 এক্স 64 এর ভিত্তিতে একটি ওএসজিও 4 ডাব্লু প্যাকেজ ভিত্তিক ইনস্টল।

মৃত্যুদন্ড কার্যকর করা হলে, এই ব্যাচ ফাইলটি পাইথন ইন্টারপ্রেটার খোলায়। import qgisসাফল্যের মধ্যে থেকে চালানো।

এই ব্যাচের ফাইলটিতে লাইনটি রয়েছে (যেমন তার মূল উত্তরে জার্মান ক্যারিলো দ্বারা উল্লিখিত):

set PYTHONPATH=%OSGEO4W_ROOT%\apps\qgis\python;%PYTHONPATH%

পাইথন দোভাষী চালু হওয়ার ঠিক আগে।


এটি পরিবেশের ভেরিয়েবলগুলি ম্যানুয়ালি কনফিগার করার
ব্যথাটি সরিয়ে দেয়

এটি কাজ শুরু করে বলে মনে হচ্ছে তবে সি: \ OSGEO4 ~ 1 \ অ্যাপ্লিকেশনগুলি \ পাইথন 37 b লাইব \ সাইট.py চালানোর সময় একটি "ত্রুটিযুক্ত সিন্ড্যাক্স: অবৈধ সিনট্যাক্স" ছুঁড়ে ফেলার চেয়ে
ডনি ভি।

আমি ত্রুটিটি পেয়েছি কারণ কিউজিআইএস ব্যবহার করছে অজগরটি আমি চালাচ্ছিলাম না। এখন কাজ!
ডনি ভি।
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.