Pygithub: ImportError: لا توجد وحدة باسم github

تم إنشاؤها على ٧ أغسطس ٢٠١٨  ·  43تعليقات  ·  مصدر: PyGithub/PyGithub

أحاول استخدام PyGitHub وتظهر لي رسالة "ImportError: لا توجد وحدة باسم github".

مواصفات الإعداد:
macOS v10.13.6
بايثون v3.7.0
مثبتة بنقطة v18.0

bug high priority

التعليق الأكثر فائدة

هذا يكسر في بيثون 3.7

أوافق ، لقد اختبرت ذلك للتو. عند استخدام Python 3.7+ ، تحصل على الخطأ التالي:

Traceback (most recent call last):
  File "scripts/src/create_release.py", line 6, in <module>
    from github.Milestone import Milestone
ModuleNotFoundError: No module named 'github'

استخدام Python 3.6 يعمل بشكل جيد.

ال 43 كومينتر

تغيير الدليل الحالي الخاص بك وحاول مرة أخرى؟

هل تقصد ببساطة نقل البرنامج النصي إلى دليل آخر وحاول مرة أخرى؟ إذا كان هذا ما قصدته ، فقد حاولت ولم يتغير شيء.

هو اسم البرنامج النصي الخاص بك أيضا "جيثب"؟

لا ، نص بايثون ليس اسمه "جيثب".

نظرًا لأنني لم أستخدم المكتبة على الإطلاق ، فقد كنت أحاول فقط استخدام نموذج الكود المقدم في README.md

screen shot 2018-08-07 at 5 33 05 pm

JosephTLyons هل قمت بتشغيل $ pip install pygithub قبل محاولة استخدام المكتبة؟

نعم فعلت. وإذا قمت بتشغيله مرة أخرى ، أحصل على هذه الرسائل لتأكيدها.

Josephs-MBP-15:~ josephlyons$ pip install pygithub
Requirement already satisfied: pygithub in /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages (1.40)
Requirement already satisfied: requests>=2.14.0 in /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages (from pygithub) (2.19.1)
Requirement already satisfied: pyjwt in /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages (from pygithub) (1.6.4)
Requirement already satisfied: urllib3<1.24,>=1.21.1 in /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages (from requests>=2.14.0->pygithub) (1.23)
Requirement already satisfied: chardet<3.1.0,>=3.0.2 in /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages (from requests>=2.14.0->pygithub) (3.0.4)
Requirement already satisfied: certifi>=2017.4.17 in /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages (from requests>=2.14.0->pygithub) (2018.4.16)
Requirement already satisfied: idna<2.8,>=2.5 in /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages (from requests>=2.14.0->pygithub) (2.7)

مرحبًا ، JosephTLyons هل قمت بتثبيت py2 و py3 معًا في MBP؟
إذا قمت بذلك ، فتأكد من أن تكوين مترجم IDE الخاص بك هو نفسه كما كان تثبيت Pip الخاص بك
مثل الصورة أدناه
image
وتكوين مترجم IDE الخاص بي هو
image

JosephTLyons حاول تشغيل البرنامج النصي على محطة طرفية .... إذا كان هذا التشغيل ناجحًا ، فإن IDE الخاص بك مهيأ بشكل سيئ

لدي كل من python 2 (الإصدار الذي تشحنه Apple مع أجهزة Mac الخاصة بهم) و python3 (مثبت من خلال Homebrew).

أيضًا ، أقوم بتشغيل البرنامج النصي من خلال Terminal ، ولا أستخدم IDE. أقوم بالترميز بدقة باستخدام Atom ثم أعمل مع Terminal.

تحمل معي ، على الرغم من أنني لست مبرمجًا جديدًا ، فأنا جديد على Python وهذه واحدة من أولى وحدات Python التي حاولت استخدامها ولم تكن ناجحة بالنسبة لي.

screen shot 2018-08-12 at 4 54 04 am

لدي نفس المشكلة. لقد أنشأت بيئة افتراضية وحاولت تثبيت PyGithub باستخدام تثبيت Pip PyGithub. لقد تلقيت: المتطلبات مستوفاة بالفعل (استخدم - ترقية للترقية): pygithub في /myvenv/lib/python3.5/site-packages
تم تلبية المتطلبات بالفعل (استخدم - ترقية للترقية): الطلبات> = 2.14.0 في /myvenv/lib/python3.5/site-packages (من pygithub)
تم تلبية المتطلبات بالفعل (استخدم - ترقية للترقية): pyjwt in /myvenv/lib/python3.5/site-packages (من pygithub)
تم تلبية المتطلبات بالفعل (استخدم -ترقية للترقية): idna <2.8،> = 2.5 in /myvenv/lib/python3.5/site-packages (من الطلبات> = 2.14.0-> pygithub)
تم تلبية المتطلبات بالفعل (استخدم -ترقية للترقية): chardet <3.1.0،> = 3.0.2 in /myvenv/lib/python3.5/site-packages (من الطلبات> = 2.14.0-> pygithub)
تم تلبية المتطلبات بالفعل (استخدم - ترقية للترقية): certifi> = 2017.4.17 في /myvenv/lib/python3.5/site-packages (من الطلبات> = 2.14.0-> pygithub)
تم تلبية المتطلبات بالفعل (استخدم -ترقية للترقية): urllib3 <1.24،> = 1.21.1 في /myvenv/lib/python3.5/site-packages (من الطلبات> = 2.14.0-> pygithub)

حاولت استيراد المكتبة باستخدام python عبر Terminal ، لكن ... بلا نجاح
sem titulo
sem titulo2

هل يحل برنامج Python 2 virtualenv المشكلة؟

حيث سيتم استخدامه ، لا يتم استخدام Python 2 بسبب التعارض.

يبدو أن هذه مشكلة معروفة مزعجة ، اسمحوا لي أن أتحرى عنها وأحاول إصلاحها.

يمكن أن تكون مشكلة PIP؟

أتذكر أنني واجهت هذه المشكلة (مع وحدة أخرى) على Linux Mate.

إذا استمرت هذه المشكلة ، فقم بتثبيت النقطة من أحدث فرع رئيسي ، حيث قمت للتو بإصلاح مشكلة استيراد في de6b713b0.

التعليقات أيضًا في رقم 314 تستحق المراجعة.

المشكلة نفسها.

حاول تثبيت pygithub باستخدام هذا الأمر: python -m pip install pygithub

هذا يضمن أنك تستخدم النقطة المتعلقة بمترجم Python الذي تقوم بتشغيل البرنامج النصي به.

لقد فعلتها:
python3 -m venv myvenv
قمت بتنشيط البيئة ثم:
python -m pip install pygithub

Collecting pygithub
  Downloading https://files.pythonhosted.org/packages/91/9e/50af4bb0ab316fedc13ae87347a718c19698ba8a19e64a692dc30c5fc9db/PyGithub-1.43.2.tar.gz (2.7MB)
    100% |████████████████████████████████| 2.7MB 647kB/s 
Collecting requests>=2.14.0 (from pygithub)
  Using cached https://files.pythonhosted.org/packages/65/47/7e02164a2a3db50ed6d8a6ab1d6d60b69c4c3fdf57a284257925dfc12bda/requests-2.19.1-py2.py3-none-any.whl
Collecting pyjwt (from pygithub)
  Using cached https://files.pythonhosted.org/packages/93/d1/3378cc8184a6524dc92993090ee8b4c03847c567e298305d6cf86987e005/PyJWT-1.6.4-py2.py3-none-any.whl
Collecting Deprecated (from pygithub)
  Downloading https://files.pythonhosted.org/packages/83/2d/7a5a117eccdef0cdf4cf015830945a7d8fdbbc9ec866d7cead758dc4229c/Deprecated-1.2.3-py2.py3-none-any.whl
Collecting certifi>=2017.4.17 (from requests>=2.14.0->pygithub)
  Downloading https://files.pythonhosted.org/packages/df/f7/04fee6ac349e915b82171f8e23cee63644d83663b34c539f7a09aed18f9e/certifi-2018.8.24-py2.py3-none-any.whl (147kB)
    100% |████████████████████████████████| 153kB 3.3MB/s 
Collecting urllib3<1.24,>=1.21.1 (from requests>=2.14.0->pygithub)
  Using cached https://files.pythonhosted.org/packages/bd/c9/6fdd990019071a4a32a5e7cb78a1d92c53851ef4f56f62a3486e6a7d8ffb/urllib3-1.23-py2.py3-none-any.whl
Collecting chardet<3.1.0,>=3.0.2 (from requests>=2.14.0->pygithub)
  Using cached https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl
Collecting idna<2.8,>=2.5 (from requests>=2.14.0->pygithub)
  Using cached https://files.pythonhosted.org/packages/4b/2a/0276479a4b3caeb8a8c1af2f8e4355746a97fab05a372e4a2c6a6b876165/idna-2.7-py2.py3-none-any.whl
Collecting wrapt<2,>=1 (from Deprecated->pygithub)
  Downloading https://files.pythonhosted.org/packages/a0/47/66897906448185fcb77fc3c2b1bc20ed0ecca81a0f2f88eda3fc5a34fc3d/wrapt-1.10.11.tar.gz
Building wheels for collected packages: pygithub, wrapt
  Running setup.py bdist_wheel for pygithub ... error
  Complete output from command /home/leonardo/phub/myvenv/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-yww1918p/pygithub/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /tmp/tmpx2l6hyczpip-wheel- --python-tag cp35:
  /usr/lib/python3.5/distutils/dist.py:261: UserWarning: Unknown distribution option: 'python_requires'
    warnings.warn(msg)
  usage: -c [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
     or: -c --help [cmd1 cmd2 ...]
     or: -c --help-commands
     or: -c cmd --help

  error: invalid command 'bdist_wheel'

  ----------------------------------------
  Failed building wheel for pygithub
  Running setup.py clean for pygithub
  Running setup.py bdist_wheel for wrapt ... error
  Complete output from command /home/leonardo/phub/myvenv/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-yww1918p/wrapt/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /tmp/tmp4kz97gl4pip-wheel- --python-tag cp35:
  usage: -c [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
     or: -c --help [cmd1 cmd2 ...]
     or: -c --help-commands
     or: -c cmd --help

  error: invalid command 'bdist_wheel'

  ----------------------------------------
  Failed building wheel for wrapt
  Running setup.py clean for wrapt
Failed to build pygithub wrapt
Installing collected packages: certifi, urllib3, chardet, idna, requests, pyjwt, wrapt, Deprecated, pygithub
  Running setup.py install for wrapt ... done
  Running setup.py install for pygithub ... done
Successfully installed Deprecated-1.2.3 certifi-2018.8.24 chardet-3.0.4 idna-2.7 pygithub-1.43.2 pyjwt-1.6.4 requests-2.19.1 urllib3-1.23 wrapt-1.10.11
You are using pip version 8.1.1, however version 18.0 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.

حاولت تشغيل برنامج نصي باستخدام pygithub ولم يُرجع أي خطأ.

من الجيد محاولة تشغيل البرنامج النصي أولاً من سطر الأوامر في البيئة الافتراضية.

قد تكون هذه بسبب الواردات النسبية. يتطلب Python 3 عمليات استيراد مطلقة. يجب أن يتم إصلاح ذلك بواسطة # 967

عمل لي sudo pip3 install pygithub .

هذا كسر في python 3.7+ ولكنه يعمل في 3.6.5 لمعلوماتك
على الرغم من عدم التأكد مما إذا كانت مشكلة النقطة حيث أن 3.7.2 تستخدم النقطة 18 ولكن 3.6.5 تستخدم 9.x

هذا يكسر في بيثون 3.7

أوافق ، لقد اختبرت ذلك للتو. عند استخدام Python 3.7+ ، تحصل على الخطأ التالي:

Traceback (most recent call last):
  File "scripts/src/create_release.py", line 6, in <module>
    from github.Milestone import Milestone
ModuleNotFoundError: No module named 'github'

استخدام Python 3.6 يعمل بشكل جيد.

ألا يزال هذا لا يعمل على Python 3.7 ؟؟؟ ما زلت أتلقى خطأ عند الاستيراد؟

@ conoroshea1996 لقد رفضوا إصلاح هذا في الماضي على الرغم من العديد من العلاقات العامة لإصلاحه.

لدي نفس المشكلة عندما أستخدم Pycharm على Mac OS ، لكن ليس لدي هذه المشكلة عندما أستخدم Jupyter على Mac OS. وليس لدي هذه المشكلة عند استخدام Pycharm أو Jupyter على Windows.

+1
Python 3.7.4 أحصل على نفس الخطأ.

@ p3nda من شبه المؤكد أن هذه ليست نفس المشكلة كما تم الإبلاغ عنها سابقًا ، هل يمكنك إظهار الخطأ الكامل؟

مرحبًاstevenk ،
شيء مؤكد:

python3 - الإصدار
بايثون 3.7.4

انا حصلت:

خطأ في الاستيراد: لا يمكن استيراد الاسم "Github" من "github" (/usr/local/lib/python3.7/site-packages/github/__init__.py)

لقد اعتقدت أن هذا الخطأ مختلف قليلاً ، لذلك بعد استكشاف الأخطاء وإصلاحها لفترة من الوقت دون جدوى ، قمت بتدوير حاوية عامل إرساء وتثبيت python3.6 وحاولت استخدامها:

ImportError: لا يمكن استيراد الاسم "Github"
python3 - الإصدار
بايثون 3.6.9

@ p3nda على أي منصة؟

stevenk بالنسبة للخطأ الأول في python3.7.4 أنا أستخدم macos mojave 10.14.6. في حاوية عامل الميناء مع python 3.6.9 ، أستخدم Ubuntu 18.04.3

لذا من الغريب ، ماذا يفعل:

>>> import github
>>> github.__file__
'/home/steven/PyGithub/github/__init__.py'
>>> dir(github.MainClass)
['AuthenticatedUser', 'Consts', 'DEFAULT_BASE_URL', 'DEFAULT_PER_PAGE', 'DEFAULT_STATUS_URL', 'DEFAULT_TIMEOUT', 'Github', 'GithubException', 'GithubIntegration', 'GitignoreTemplate', 'HookDescription', 'Installation', 'InstallationAuthorization', 'RateLimit', 'Repository', 'Requester', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'datetime', 'github', 'jwt', 'pickle', 'requests', 'time', 'urllib3']
>>> github.MainClass.__file__
'/home/steven/PyGithub/github/MainClass.py'

اعطيك

و from github.MainClass import Github آسف

في حاوية Docker Ubuntu 18.04:

استيراد جيثب
Traceback (آخر مكالمة أخيرة):
ملف ""، السطر 1 ، في
ملف "/usr/local/lib/python3.6/dist-packages/github/__init__.py" ، السطر 44 ، في
من github.MainClass استيراد Github و GithubIntegration
ملف "/usr/local/lib/python3.6/dist-packages/github/MainClass.py" ، السطر 58 ، في
طلبات الاستيراد
ملف "/usr/local/lib/python3.6/dist-packages/requests/__init__.py" ، السطر 112 ، في
من عند . أدوات الاستيراد
ملف "/usr/local/lib/python3.6/dist-packages/requests/utils.py" ، السطر 26 ، في
من ._internal_utils استيراد إلى_native_string
ملف "/usr/local/lib/python3.6/dist-packages/requests/_internal_utils.py" ، السطر 11 ، في
من استيراد .compat is_py2 ، builtin_str ، str
ملف "/usr/local/lib/python3.6/dist-packages/requests/compat.py" ، السطر 59 ، في
من http استيراد ملف تعريف الارتباط كـ cookielib
ملف "/usr/lib/python3.6/http/cookiejar.py" ، السطر 31 ، في
نسخة الاستيراد
ملف "/copy.py" ، السطر 2 ، بتنسيق
من جيثب استيراد جيثب
ImportError: لا يمكن استيراد الاسم "Github"

من github.MainClass استيراد جيثب
Traceback (أحدث مكالمة أخيرة):
ملف ""، السطر 1 ، في
ملف "/usr/local/lib/python3.6/dist-packages/github/__init__.py" ، السطر 44 ، في
من github.MainClass استيراد Github و GithubIntegration
ملف "/usr/local/lib/python3.6/dist-packages/github/MainClass.py" ، السطر 58 ، في
طلبات الاستيراد
ملف "/usr/local/lib/python3.6/dist-packages/requests/__init__.py" ، السطر 112 ، في
من عند . أدوات الاستيراد
ملف "/usr/local/lib/python3.6/dist-packages/requests/utils.py" ، السطر 26 ، في
من ._internal_utils استيراد إلى_native_string
ملف "/usr/local/lib/python3.6/dist-packages/requests/_internal_utils.py" ، السطر 11 ، في
من استيراد .compat is_py2 ، builtin_str ، str
ملف "/usr/local/lib/python3.6/dist-packages/requests/compat.py" ، السطر 59 ، في
من http استيراد ملف تعريف الارتباط كـ cookielib
ملف "/usr/lib/python3.6/http/cookiejar.py" ، السطر 31 ، في
نسخة الاستيراد
ملف "/copy.py" ، السطر 2 ، بتنسيق
من جيثب استيراد جيثب
ImportError: لا يمكن استيراد الاسم "Github"

على جهاز Mac الخاص بي:

استيراد جيثب
Traceback (أحدث مكالمة أخيرة):
ملف ""، السطر 1 ، في
ملف "/usr/local/lib/python3.7/site-packages/github/__init__.py" ، السطر 44 ، في
من github.MainClass استيراد Github و GithubIntegration
ملف "/usr/local/lib/python3.7/site-packages/github/MainClass.py" ، السطر 58 ، في
طلبات الاستيراد
ملف "/Users/amanda/Library/Python/3.7/lib/python/site-packages/requests/__init__.py" ، السطر 112 ، في
من عند . أدوات الاستيراد
ملف "/Users/amanda/Library/Python/3.7/lib/python/site-packages/requests/utils.py" ، السطر 26 ، في
من ._internal_utils استيراد إلى_native_string
ملف "/Users/amanda/Library/Python/3.7/lib/python/site-packages/requests/_internal_utils.py" ، السطر 11 ، في
من استيراد .compat is_py2 ، builtin_str ، str
ملف "/Users/amanda/Library/Python/3.7/lib/python/site-packages/requests/compat.py" ، السطر 59 ، في
من http استيراد ملف تعريف الارتباط كـ cookielib
ملف "/usr/local/Cellar/python/3.7.5/Frameworks/Python.framework/Versions/3.7/lib/python3.7/http/cookiejar.py" ، السطر 31 ، في
نسخة الاستيراد
ملف "/Users/amanda/copy.py" ، السطر 2 ، بتنسيق
من جيثب استيراد جيثب
خطأ في الاستيراد: لا يمكن استيراد الاسم "Github" من "github" (/usr/local/lib/python3.7/site-packages/github/__init__.py)

من github.MainClass استيراد جيثب
Traceback (أحدث مكالمة أخيرة):
ملف ""، السطر 1 ، في
ملف "/usr/local/lib/python3.7/site-packages/github/__init__.py" ، السطر 44 ، في
من github.MainClass استيراد Github و GithubIntegration
ملف "/usr/local/lib/python3.7/site-packages/github/MainClass.py" ، السطر 58 ، في
طلبات الاستيراد
ملف "/Users/amanda/Library/Python/3.7/lib/python/site-packages/requests/__init__.py" ، السطر 112 ، في
من عند . أدوات الاستيراد
ملف "/Users/amanda/Library/Python/3.7/lib/python/site-packages/requests/utils.py" ، السطر 26 ، في
من ._internal_utils استيراد إلى_native_string
ملف "/Users/amanda/Library/Python/3.7/lib/python/site-packages/requests/_internal_utils.py" ، السطر 11 ، في
من استيراد .compat is_py2 ، builtin_str ، str
ملف "/Users/amanda/Library/Python/3.7/lib/python/site-packages/requests/compat.py" ، السطر 59 ، في
من http استيراد ملف تعريف الارتباط كـ cookielib
ملف "/usr/local/Cellar/python/3.7.5/Frameworks/Python.framework/Versions/3.7/lib/python3.7/http/cookiejar.py" ، السطر 31 ، في
نسخة الاستيراد
ملف "/Users/amanda/copy.py" ، السطر 2 ، بتنسيق
من جيثب استيراد جيثب
خطأ في الاستيراد: لا يمكن استيراد الاسم "Github" من "github" (/usr/local/lib/python3.7/site-packages/github/__init__.py)

يجب أن أشير إلى أنني على جهاز عملي هذا الصباح أقوم بإجراء الاختبار من جهاز macbook وهو
MacOS Mojave 10.14.6 مع تثبيت python 3.7.5. بالنسبة لحاوية ubuntu ، فهي نفس النسخة من Python.

تضمين التغريدة

File "/usr/local/Cellar/python/3.7.5/Frameworks/Python.framework/Versions/3.7/lib/python3.7/http/cookiejar.py", line 31, in
import copy
File "/Users/amanda/copy.py", line 2, in 

من أين جاء هذا الملف /copy.py أو /Users/amanada/copy.py؟ إنها تخفي وحدة Python حقيقية /usr/lib/python3.6/copy.py وتتسبب في استيراد دائري.

copy.py هو برنامج نصي كنت أعمله ويستخدم PyGithub. عندما قمت بتشغيل هذه الأوامر ، تم تشغيلها من مترجم Python نفسه بعد أن حاولت تشغيل البرنامج النصي. قمت بإنشاء حاوية جديدة دون تشغيل هذا البرنامج النصي وقمت فقط بتشغيل أوامر الاستيراد من خلال مترجم Python وتعمل بشكل جيد:

استيراد جيثب
من جيثب استيراد جيثب
خروج()

لست متأكدًا من سبب تسبب إضافته في البرنامج النصي الخاص بي في كسر كل شيء ، حتى أنه لم يتم تشكيله بالكامل بعد:

استيراد شيل
من جيثب استيراد جيثب

ACCESS_TOKEN = "123456789"

تهيئة عميل جيثب

ز = جيثب (ACCESS_TOKEN)
print (g.get_user (). get_repos ())

تضمين التغريدة

لقد كسر كل شيء بسبب الاسم - إنه يخفي وحدة Python المسماة 'copy' الموجودة في سلسلة استيراد الوحدة النمطية عند تشغيل from github import Github . اتصل بالبرنامج النصي الخاص بك بأي شيء آخر ويجب أن يعمل بشكل جيد.

آه حسنًا ، شكرًا على الوضوح @ stevenk ، فأنا أقدر وقتك!

@ p3nda يسعدني المساعدة! سأغلق هذه المشكلة ، إذا كانت لديك أية مشكلات أخرى ، فلا تتردد في فتح إصدار جديد.

هل يمكن لأي شخص مساعدتي في هذا الخطأ

Traceback (أحدث مكالمة أخيرة):
ملف "terra.py" ، السطر 1 ، بتنسيق
من استيراد python_terraform *
ImportError: لا توجد وحدة باسم python_terraform

في حالتي ، تلقيت هذا الخطأ بسبب مشكلات في مسار استيراد Python الخاص بي.

أنا أستخدم Python 3.7.3:

$ python3 --version
Python 3.7.3

و PyPI 20.2.3:

$ pip3 --version
pip 20.2.3 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)

لقد قمت بتثبيت PyGithub:

$ pip3 install pygithub
Requirement already satisfied: pygithub in /usr/local/lib/python3.7/site-packages (1.43)
Requirement already satisfied: pyjwt in /usr/local/lib/python3.7/site-packages (from pygithub) (1.7.1)
Requirement already satisfied: requests>=2.14.0 in /usr/local/lib/python3.7/site-packages (from pygithub) (2.24.0)
Requirement already satisfied: chardet<4,>=3.0.2 in /usr/local/lib/python3.7/site-packages (from requests>=2.14.0->pygithub) (3.0.4)
Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /usr/local/lib/python3.7/site-packages (from requests>=2.14.0->pygithub) (1.25.7)
Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.7/site-packages (from requests>=2.14.0->pygithub) (2020.6.20)
Requirement already satisfied: idna<3,>=2.5 in /usr/local/lib/python3.7/site-packages (from requests>=2.14.0->pygithub) (2.10)

لكنها فشلت في الاستيراد ، مع ذلك:

$ python3 <<< "from github import Github"
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'github'

في مخرجات النقطة ، رأينا أنه تم تثبيت الحزمة على /usr/local/lib/python3.7/site-packages . ومع ذلك ، كان هذا الدليل __not__ في مسار استيراد Python الخاص بي:

$ python3 <<< 'import sys; print(sys.path)'
['', '/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.7/lib/python37.zip', '/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.7/lib/python3.7', '/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.7/lib/python3.7/lib-dynload', '/Users/jhwill/Library/Python/3.7/lib/python/site-packages', '/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.7/lib/python3.7/site-packages']

الحل 1: أضف إلى PYTHONPATH

إحدى طرق حل هذه المشكلة هي إضافة الدليل المفقود إلى PYTHONPATH ، في ~/.bashrc :

# Add these lines
readonly local_site_packages="/usr/local/lib/python3.7/site-packages"
if [ ! -z "$PYTHONPATH" ]; then
    export PYTHONPATH="$local_site_packages:$PYTHONPATH"
else
    export PYTHONPATH="$local_site_packages"
fi

ومصدر الملف:

$ . ~/.bashrc

الحل 2: التثبيت على مسار استيراد موجود

/Users/jhwill/Library/Python/3.7/lib/python/site-packages موجود بالفعل في مسار النظام الخاص بي. لذلك ، يمكننا استهداف هذا الدليل للتثبيت أثناء استخدام الأمر pip3 :

$ pip install --target=/Users/jhwill/Library/Python/3.7/lib/python/site-packages PyGithub
Collecting PyGithub
  Using cached PyGithub-1.53-py3-none-any.whl (274 kB)
Collecting pyjwt
  Using cached PyJWT-1.7.1-py2.py3-none-any.whl (18 kB)
Collecting deprecated
  Using cached Deprecated-1.2.10-py2.py3-none-any.whl (8.7 kB)
Collecting requests>=2.14.0
  Using cached requests-2.24.0-py2.py3-none-any.whl (61 kB)
Processing ./Library/Caches/pip/wheels/62/76/4c/aa25851149f3f6d9785f6c869387ad82b3fd37582fa8147ac6/wrapt-1.12.1-cp37-cp37m-macosx_10_14_x86_64.whl
Collecting idna<3,>=2.5
  Using cached idna-2.10-py2.py3-none-any.whl (58 kB)
Collecting chardet<4,>=3.0.2
  Using cached chardet-3.0.4-py2.py3-none-any.whl (133 kB)
Collecting certifi>=2017.4.17
  Using cached certifi-2020.6.20-py2.py3-none-any.whl (156 kB)
Collecting urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1
  Downloading urllib3-1.25.10-py2.py3-none-any.whl (127 kB)
     |████████████████████████████████| 127 kB 2.9 MB/s 
Installing collected packages: pyjwt, wrapt, deprecated, idna, chardet, certifi, urllib3, requests, PyGithub
Successfully installed PyGithub-1.53 certifi-2020.6.20 chardet-3.0.4 deprecated-1.2.10 idna-2.10 pyjwt-1.7.1 requests-2.24.0 urllib3-1.25.10 wrapt-1.12.1
هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات

القضايا ذات الصلة

kodeshpa picture kodeshpa  ·  3تعليقات

mlainez picture mlainez  ·  7تعليقات

jacquev6 picture jacquev6  ·  3تعليقات

AdyaAbhra picture AdyaAbhra  ·  5تعليقات

xpdable picture xpdable  ·  5تعليقات