ImportError:无法导入名称“ IncompleteRead”-Windows

时间:2018-10-29 09:36:08

标签: python python-3.x pip pipenv

这个问题似乎以前已经回答过,但似乎只在linux上发生过。

我对文件的唯一导入是导入http.client,完整错误如下:

Error:  An error occurred while installing html!
Command "python setup.py egg_info" failed with error code 1 in 
C:\Users\Robert\AppData\Local\Temp\pip-install-nwrzaprg\html\

This is likely caused by a bug in html. Report this to its maintainers.

(online_email-fRueOS4x) C:\Users\Robert\Desktop\stevesjobs_email>python 
auth0.py
Traceback (most recent call last):
  File "auth0.py", line 1, in <module>
    import http.client
  File "c:\users\robert\appdata\local\programs\python\python36- 
   32\Lib\http\client.py", line 71, in <module>
    import email.parser
  File "C:\Users\Robert\Desktop\online_email\email.py", line 2, in 
<module>
    import requests
  File "C:\Users\Robert\.virtualenvs\online_email-fRueOS4x\lib\site- 
packages\requests\__init__.py", line 43, in <module>
import urllib3
  File "C:\Users\Robert\.virtualenvs\online_email-fRueOS4x\lib\site- 
packages\urllib3\__init__.py", line 8, in <module>
     from .connectionpool import (
  File "C:\Users\Robert\.virtualenvs\online_email-fRueOS4x\lib\site- 
packages\urllib3\connectionpool.py", line 11, in <module>
    from .exceptions import (
   File "C:\Users\Robert\.virtualenvs\online_email-fRueOS4x\lib\site- 
packages\urllib3\exceptions.py", line 2, in <module>
    from .packages.six.moves.http_client import (
ImportError: cannot import name 'IncompleteRead'

我正在使用pipenv。可能导致此问题的原因是,我最近在Windows 10上安装了Linux Shell才能与Hyper一起使用。但是这个项目是我从标准Windows Shell运行的。

我对此很迷茫。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:1)

您的问题可能是您的环境中有一个名为email.py的文件。

Traceback (most recent call last):
  File "auth0.py", line 1, in <module>
    import http.client
  File "c:\users\robert\appdata\local\programs\python\python36-32\Lib\http\client.py", line 71, in <module>
    import email.parser
  File "C:\Users\Robert\Desktop\online_email\email.py", line 2, in 
<module>

在auth0.py中,您写了

import http.client

并且在您环境的http.client模块中,有一个

import email.parser

这应该导致从python环境中导入email.parser模块,但是解释器在以下位置找到了一个名为email.py的文件:C:\Users\Robert\Desktop\online_email\email.py。由于此文件是由python解释器加载的,因此您将获得错误。修复您的环境(PYTHONPATH),以确保自定义库在Python内置库之后加载,或者更好的是,不要使用email.py作为脚本的名称;)