পাইথন 3 ইম্পোর্টেরর: 'কনফিগার পার্সার' নামে কোনও মডিউল নেই


322

আমি চেষ্টা করছি প্যাকেজ, কিন্তু আমি একটি পেতে ।pip installMySQL-pythonImportError

Jans-MacBook-Pro:~ jan$ /Library/Frameworks/Python.framework/Versions/3.3/bin/pip-3.3 install MySQL-python
Downloading/unpacking MySQL-python
  Running setup.py egg_info for package MySQL-python
    Traceback (most recent call last):
      File "<string>", line 16, in <module>
      File "/var/folders/lf/myf7bjr57_jg7_5c4014bh640000gn/T/pip-build/MySQL-python/setup.py", line 14, in <module>
        from setup_posix import get_config
      File "./setup_posix.py", line 2, in <module>
        from ConfigParser import SafeConfigParser
    ImportError: No module named 'ConfigParser'
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):

  File "<string>", line 16, in <module>

  File "/var/folders/lf/myf7bjr57_jg7_5c4014bh640000gn/T/pip-build/MySQL-python/setup.py", line 14, in <module>

    from setup_posix import get_config

  File "./setup_posix.py", line 2, in <module>

    from ConfigParser import SafeConfigParser

ImportError: No module named 'ConfigParser'

----------------------------------------
Command python setup.py egg_info failed with error code 1 in /var/folders/lf/myf7bjr57_jg7_5c4014bh640000gn/T/pip-build/MySQL-python
Storing complete log in /Users/jan/.pip/pip.log
Jans-MacBook-Pro:~ jan$ 

কোন ধারনা?


কি echo $PATHবলে?
ইন্সপেক্টর

20
পাইথন 3 এর সাথে আমি কীভাবে একই ত্রুটি পাই?
ক্লাদিউ ক্রিঙ্গা

উত্তর:


360

পাইথন 3-তে, পিইপি 8 কমপ্লায়েন্সের জন্য নতুন ConfigParserনামকরণ করা হয়েছে configparser। দেখে মনে হচ্ছে আপনি যে প্যাকেজটি ইনস্টল করছেন তা পাইথন 3 সমর্থন করে না।


77
সঠিক। মাইএসকিউএল-পাইথন বর্তমানে পাইথন 3 সমর্থন করে না
মাইকেল মায়ার

3
আমার বিকল্প কি কি? আমি পাইমাইএসকিউএল 3-0.5 চেষ্টা করেছি তবে এটি খুব বগি, এটি প্রথম চালানো কল এ ক্র্যাশ হয়ে গেছে।
যদি_______

15
@ জানবিরসা একটি দ্রুত গুগল অনুসন্ধানে কয়েকটি সম্ভাবনার সন্ধান পেয়েছে: পাইমাইএসকিউএল যদি কাজ না করে তবে মাইএসকিউএল-পাইথনের একটি বন্দর , এসএসকিউএল , মাইএসকিউএল সংযোগকারী / পাইথন এবং অন্যান্য রয়েছে।
আবে কার্পলাস

12
এটির একটি চলন্ত লক্ষ্য কিন্তু আমি পাইপ 3 ইনস্টল করা মাইএসকিএল-সংযোজক ব্যবহার করি। পাইথন 3 সমর্থনের জন্য মাইএসকিউএল থেকে এখন উপলব্ধ। টাইপ করার সময় রিলিজ হয় 2.1.3।
লংমং

4
সবেমাত্র চেষ্টা করেছেন sudo python3 -m pip install mysql-connectorএবং এখন এটি কাজ করছে। লঙ্গমং
মার্কো

407

পরিবর্তে আপনি mysqlclientপ্যাকেজটি মাইএসকিউএল-পাইথনের জন্য ড্রপ-ইন প্রতিস্থাপন হিসাবে ব্যবহার করতে পারেন । এটি MySQL-pythonপাইথন 3 এর জন্য অতিরিক্ত সমর্থনযুক্ত একটি কাঁটাচামচ ।

আমি সহজভাবে ভাগ্য ছিল

pip install mysqlclient

আমার পাইথন 3.4 পরে ভার্চুয়ালেনভ

sudo apt-get install python3-dev libmysqlclient-dev

যা স্পষ্টতই উবুন্টু / ডেবিয়ানের ক্ষেত্রে নির্দিষ্ট, তবে আমি কেবল আমার সাফল্য ভাগ করে নিতে চেয়েছিলাম :)


2
CentOS এ, mysqlclient ইনস্টল করার আগে "yum ইনস্টল পাইথন-ডেভেল mysql-devel" চালান।
জো চেং

3
মনে রাখবেন এটি একটি জিপিএল প্যাকেজ, সুতরাং আপনি যদি এই মডিউলটি ব্যবহার করেন তবে আপনার জিপিএল সহ আপনার প্রোগ্রামটি প্রকাশ করা দরকার।
bogdan.mustiata

উপর ডেবিয়ান এটি ইনস্টল করা যথেষ্ট libpython3.5-minimalপ্যাকেজ ( sudo apt-get install libpython3.5-minimal)।
patryk.beza

2
ওএসএক্স-এ আপনার মাইএসকিএলসিলেট ইনস্টল করার আগে "ব্রিউ ইনস্টল মাইএসকিএল" চালানো উচিত।
ঘোস্টিশেভ

আমি পিপ 3 ইনস্টল মাইএসকিএলসিলেট ব্যবহার করেছি এবং এটি একটি কবজির মতো কাজ করেছে! ধন্যবাদ!

16

এখানে একটি কোড যা পাইথন ২.x এবং ৩.x উভয় ক্ষেত্রেই কাজ করা উচিত

স্পষ্টতই আপনার sixমডিউলটির প্রয়োজন হবে , তবে মডিউলগুলি লিখতে প্রায় অসম্ভব যা ছয়টি ছাড়া উভয় সংস্করণে কাজ করে।

try:
    import configparser
except:
    from six.moves import configparser

5
কেন চেষ্টা ব্লকটি এড়িয়ে যান এবং কেবল ব্যবহার করবেন নাfrom six.moves import configparser
ম্যাথিয়াস কুহন

5
-1। এর পুরো বিষয়টি six.movesহ'ল নামান্তরিত মডিউলগুলিতে "একটি ধারাবাহিক ইন্টারফেস সরবরাহ করা" ; আমদানি মোড়ানো try/ exceptযখন ব্যবহার sixকরে পয়েন্টটি পরাজিত করে। শুধু ব্যবহার from six.moves import configparser। এখানে ছয়টির দরকার নেই; আপনি আপনার ব্লকের from six.moves import configparserসাথে প্রতিস্থাপন করতে এবং প্রয়োজন ছাড়াই একই ফলাফল অর্জন করতে পারেন । import ConfigParser as configparserexceptsix
মার্ক অ্যামেরি

@ মাথিয়াসকুহান আমার ধারণা, sixপাইথন ২ এক্স এর জন্য কেবলমাত্র প্রয়োজনীয়তা তৈরি করার উদ্দেশ্য ছিল , তবে পাইথন ৩. এক্স নয়।
মার্টিন থোমা

@ মার্টিনথোমা এটি পুরো পয়েন্টকে পরাভূত করে (যেমন মার্ক অ্যামেরি লিখেছেন)। চেষ্টা / চেক ব্যতীত যদি জায়গা থাকে তবে ব্যবহারের six.movesআর কোনও কারণ নেই এবং আদি নামটি সরাসরি পাইথন 2 এর জন্যও ব্যবহার করা যেতে পারে।
মাথিয়াস কুহান

13
pip install configparser
sudo cp /usr/lib/python3.6/configparser.py /usr/lib/python3.6/ConfigParser.py

তারপরে আবার এমওয়াইএসকিউএল-পাইথন ইনস্টল করার চেষ্টা করুন। আমার জন্য কাজ করেছে


12

মাইএসকিউএল-পাইথন পাইথন 3 এ সমর্থিত নয় এর পরিবর্তে আপনি মাইএসকিএলসিলেট ব্যবহার করতে পারেন

আপনি যদি fedora/centos/Red Hatনিম্নলিখিত প্যাকেজ ইনস্টল করা হয়

  1. yum install python3-devel
  2. pip install mysqlclient

1
এনভায়রনমেন্ট এরির উত্থাপন ("% s পাওয়া যায় নি"% (mysql_config.path,)) ওএসআরআর:
mysql_config

1
@ পাইরেট অ্যাপ সম্ভবত মাইএসকিএল ইনস্টল করা নেই। এখানে চেক stackoverflow.com/questions/7475223/...
কুশল

sudo yum ইনস্টল পাইথন 3-ডেভেল লোড প্লাগইনস: দ্রুততম স্মারক ক্যাশেড হোস্টফিল * বেস থেকে মিরর গতি লোড করছে: মিরর.web-ster.com * ইপেল: মিররস.ক্যাট.পিডিএক্স.ইডু * এক্সট্রা: মিরর.ওয়েব-স্টার ডটকম * আইস: আয়না .kernel.org * আপডেট: mir.web-ster.com কোনও প্যাকেজ পাইথন 3-ডেভেল উপলব্ধ। ত্রুটি: কিছুই
Viru

7

আপনি যদি সেন্টস ব্যবহার করছেন তবে আপনার ব্যবহারের প্রয়োজন

  1. yum install python34-devel.x86_64
  2. yum groupinstall -y 'development tools'
  3. pip3 install mysql-connector
  4. pip install mysqlclient

6

পাইথন 2/3 এর সামঞ্জস্যতা configparserকেবল sixলাইব্রেরির মাধ্যমে সমাধান করা যায়

from six.moves import configparser


5

আমি একই সমস্যা ছিল। দেখা যাচ্ছে, আমার সেন্টোসে পাইথন 3 ডেভেল ইনস্টল করা দরকার। প্রথমে আপনাকে আপনার প্যাকেজটি অনুসন্ধান করতে হবে যা আপনার সিস্টেমের সাথে সামঞ্জস্যপূর্ণ।

yum search python3 | grep devel

তারপরে, প্যাকেজটি ইনস্টল করুন:

yum install -y python3-devel.x86_64

তারপরে, পিপ থেকে mysqlclient ইনস্টল করুন

pip install mysqlclient

3

আমি ভ্যালার্স উত্তর দিয়ে আরও পেয়েছি:

পিপ ইনস্টল কনফিগারেশন sudo সিপি /usr/lib/python3.6/configparser.py /usr/lib/python3.6/ConfigParser.py তারপরে আবার এমওয়াইএসকিউএল-পাইথন ইনস্টল করার চেষ্টা করুন। আমার জন্য কাজ করেছে

আমি ফাইলটি অনুলিপি না করে লিঙ্ক করার পরামর্শ দেব। এটি আপডেট করার জন্য সংরক্ষণ করা হয়। আমি /usr/lib/python3/ডিরেক্টরিটি ফাইলটি সংযুক্ত করেছি ।


2

ব্যবহার করে দেখুন এই সমাধান যা আমার জন্য জরিমানা করেন।

মূলত এটি পুনরায় ইনস্টল করার / সাম্প্রতিক সংস্করণে আপগ্রেড এর মাইএসকিউএল থেকে চোলাই , এবং তারপর ইনস্টল mysqlclientবা MySQL-Pythonথেকে global pip3পরিবর্তে virtualenv pip3

তারপরে অ্যাক্সেস করে virtualenvএবং সফলভাবে ইনস্টল করুন mysqlclientবা MySQL-Python


1

পাইথনের সংস্করণটি যা আপনি প্রথমে ব্যবহার করছেন তা কীভাবে পরীক্ষা করা যায়।

import six
if six.PY2:
    import ConfigParser as configparser
else:
    import configparser

1
এটি অনেক সহজ হবেfrom six.moves import configparser
আকিফ

1

আমি কালি লিনাক্স-রোলিং চালাই এবং আমি এই সমস্যাটি পেলাম, যখন আমি টার্মিনালে cupp.py চালানোর চেষ্টা করলাম, অজগরটি 3.6.0 এ আপডেট করার পরে। কিছু গবেষণা এবং পরীক্ষার পরে আমি দেখতে পেলাম যে আমার ConfigParserপক্ষে configparserকাজ করার জন্য পরিবর্তন হয়েছে তবে আমি অন্য একটি বিষয় জুড়ে এসেছি।

config = configparser.configparser() AttributeError: module 'configparser' has no attribute 'configparser'

আরও কিছুটা গবেষণার পরে আমি বুঝতে পারলাম অজগর 3 এর ConfigParserজন্য পরিবর্তন করা হয়েছে configparserতবে নোট করুন যে এর একটি বৈশিষ্ট্য রয়েছে ConfigParser()


1

আমি ম্যাক ওএস 10, পাইথন 3.7.6 এবং জ্যাঙ্গো 2.2.7 তে একই ত্রুটি পেয়েছি। অসংখ্য সমাধানের চেষ্টা করার পরে আমার জন্য কী কাজ করেছে তা ভাগ করে নেওয়ার জন্য আমি এই সুযোগটি ব্যবহার করতে চাই।

ধাপ

  1. লিঙ্ক থেকে ম্যাক ওএসের জন্য সংযোগকারী / পাইথন 8.0.20 ইনস্টল করা

  2. প্রয়োজনীয়তাগুলিতে বর্তমান নির্ভরতা অনুলিপি করুন। Txt ফাইল, বর্তমান ভার্চুয়াল এনভিএটিকে নিষ্ক্রিয় করে, এবং এটি ব্যবহার করে মুছে ফেলা হয়েছে;

    ইতিমধ্যে তৈরি না হলে ফাইল তৈরি করুন; touch requirements.txt

    ফাইল অনুলিপি অনুলিপি; python -m pip3 freeze > requirements.txt

    নিষ্ক্রিয় এবং বর্তমান ভার্চুয়াল env মুছে দিন; deactivate && rm -rf <virtual-env-name>

  3. আরেকটি ভার্চুয়াল vেভ তৈরি করেছে এবং এটি ব্যবহার করে এটি সক্রিয় করেছে; python -m venv <virtual-env-name> && source <virtual-env-name>/bin/activate

  4. ব্যবহার করে পূর্ববর্তী নির্ভরতা ইনস্টল করুন; python -m pip3 install -r requirements.txt


-2

দয়া করে দেখতে কি /usr/bin/python নির্দেশিত

যদি এটিতে python3 or higher পরিবর্তিত হতে নির্দেশ করেpython2.7

এটি সমস্যার সমাধান করা উচিত।

আমি পাইথন প্যাকেজগুলির জন্য ইনস্টল ত্রুটি পেয়েছিলাম। আবে কার্পলাসের সমাধান ও আলোচনা আমাকে কী সমস্যা হতে পারে সে সম্পর্কে ইঙ্গিত দিয়েছে। তারপর আমি কেনে যে আমি নিজে পরিবর্তন করেছে /usr/bin/pythonথেকে python2.7থেকে /usr/bin/python3.5, যা আসলে এই সমস্যার কারণ হয়। একবার আমি revertedএকই। এটি সমাধান হয়ে গেছে।


4
সমর্থন করার জন্য পাইথন 2 এ ফিরে যাওয়া MySQL-pythonওভারকিল; পরিবর্তে লাইব্রেরির পাইথন 3 সংস্করণ ব্যবহার করুন।
মার্ক আমেরিকা

-3

এটি আমার পক্ষে কাজ করেছে

cp /usr/local/lib/python3.5/configparser.py /usr/local/lib/python3.5/ConfigParser.py

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