Python 导入错误:无法导入名称';证书';

Python 导入错误:无法导入名称';证书';,python,python-3.x,python-requests,importerror,Python,Python 3.x,Python Requests,Importerror,在过去的两天里我一直有这个错误。python请求库似乎有问题,但我已经重新安装了好几次,但运气不好 Traceback (most recent call last): File "project-src/bla-blah/manage.py", line 10, in <module> execute_from_command_line(sys.argv) File "project-src\env\lib\site-packages\django\core

在过去的两天里我一直有这个错误。python请求库似乎有问题,但我已经重新安装了好几次,但运气不好

Traceback (most recent call last):
    File "project-src/bla-blah/manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
    File "project-src\env\lib\site-packages\django\core\management\__init__.py", line 385, in execute_from_command_line
    utility.execute()
    File "project-src\env\lib\site-packages\django\core\management\__init__.py", line 354, in execute
    django.setup()
    File "project-src\env\lib\site-packages\django\__init__.py", line 21, in setup
    apps.populate(settings.INSTALLED_APPS)
    File "project-src\env\lib\site-packages\django\apps\registry.py", line 85, in populate
    app_config = AppConfig.create(entry)
    File "project-src\env\lib\site-packages\django\apps\config.py", line 112, in create
    mod = import_module(mod_path)
    File "C:\Python34\lib\importlib\__init__.py", line 109, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
    File "<frozen importlib._bootstrap>", line 2254, in _gcd_import
    File "<frozen importlib._bootstrap>", line 2237, in _find_and_load
    File "<frozen importlib._bootstrap>", line 2226, in _find_and_load_unlocked
    File "<frozen importlib._bootstrap>", line 1200, in _load_unlocked
    File "<frozen importlib._bootstrap>", line 1129, in _exec
    File "<frozen importlib._bootstrap>", line 1471, in exec_module
    File "<frozen importlib._bootstrap>", line 321, in _call_with_frames_removed
    File "project-src\env\lib\site-packages\social\apps\django_app\__init__.py", line 14, in <module>
    from social.apps.django_app.utils import load_strategy
    File "project-src\env\lib\site-packages\social\apps\django_app\utils.py", line 12, in <module>
    from social.backends.utils import get_backend
    File "project-src\env\lib\site-packages\social\backends\utils.py", line 2, in <module>
    from social.backends.base import BaseAuth
    File "project-src\env\lib\site-packages\social\backends\base.py", line 1, in <module>
    from requests import request, ConnectionError
    File "project-src\env\lib\site-packages\requests\__init__.py", line 58, in <module>
    from . import utils
    File "project-src\env\lib\site-packages\requests\utils.py", line 24, in <module>
    from . import certs

    ImportError: cannot import name 'certs'

如果你想知道这个问题发生了什么。。。我重新安装了操作系统,再次下载了git项目,重新配置了pythonvirtualenv,它“神奇地”工作了。所以我肯定在某个地方出现了配置错误,但这不是请求库问题


如果您有同样的问题,我建议您安装一个新的环境。

上周我的Mac(Sierra)也有同样的问题。此外,存在
certs.py
模块,这意味着这是一个与操作系统相关的问题,而不是与Python本身相关的问题。在我的例子中,这是最大文件限制的问题,所以只需增加
ulimit 200000

就可以了(重新安装请求库):


pip卸载请求
pip安装请求

也许你应该在请求问题追踪器上发布这个。好的,我也会在那里问。非常感谢。您使用的是什么版本的请求?最后一个:certs.py中的requests 2.4.3我不明白问题出在哪里。这意味着它无法导入证书。执行以下操作时会发生什么:
python-c'导入请求;打印(请求版本)
?macOS Mojave软件包自动更新似乎存在一些问题。不确定。但是,我卸载了requests 2.18.x版本,并安装了最新的2.22.x版本,它对我很有效。这应该是答案!
try:
    from certifi import where
except ImportError:
    def where():
        """Return the preferred certificate bundle."""
        # vendored bundle inside Requests
        return os.path.join(os.path.dirname(__file__), 'cacert.pem')