我无法使用pip安装任何软件包

时间:2016-12-14 17:23:26

标签: python pandas pip

最近我安装了Python 2.7,因为我想重写一些用Python 3.5编写的脚本。在我修改了PATH环境变量后,我想安装pandas模块,我得到以下错误:

C:\Python27>pip install pandas
Collecting pandas
Exception:
Traceback (most recent call last):
  File "c:\python27\lib\site-packages\pip\basecommand.py", line 209, in main
    status = self.run(options, args)
  File "c:\python27\lib\site-packages\pip\commands\install.py", line 299, in run

    requirement_set.prepare_files(finder)
  File "c:\python27\lib\site-packages\pip\req\req_set.py", line 360, in prepare_
files
    ignore_dependencies=self.ignore_dependencies))
  File "c:\python27\lib\site-packages\pip\req\req_set.py", line 512, in _prepare
_file
    finder, self.upgrade, require_hashes)
  File "c:\python27\lib\site-packages\pip\req\req_install.py", line 273, in popu
late_link
    self.link = finder.find_requirement(self, upgrade)
  File "c:\python27\lib\site-packages\pip\index.py", line 440, in find_requireme
nt
    all_candidates = self.find_all_candidates(req.name)
  File "c:\python27\lib\site-packages\pip\index.py", line 398, in find_all_candi
dates
    for page in self._get_pages(url_locations, project_name):
  File "c:\python27\lib\site-packages\pip\index.py", line 543, in _get_pages
    page = self._get_page(location)
  File "c:\python27\lib\site-packages\pip\index.py", line 646, in _get_page
    return HTMLPage.get_page(link, session=self.session)
  File "c:\python27\lib\site-packages\pip\index.py", line 755, in get_page
    "Cache-Control": "max-age=600",
  File "c:\python27\lib\site-packages\pip\_vendor\requests\sessions.py", line 48
0, in get
    return self.request('GET', url, **kwargs)
  File "c:\python27\lib\site-packages\pip\download.py", line 378, in request
    return super(PipSession, self).request(method, url, *args, **kwargs)
  File "c:\python27\lib\site-packages\pip\_vendor\requests\sessions.py", line 46
8, in request
    resp = self.send(prep, **send_kwargs)
  File "c:\python27\lib\site-packages\pip\_vendor\requests\sessions.py", line 60
8, in send
    r.content
  File "c:\python27\lib\site-packages\pip\_vendor\requests\models.py", line 737,
 in content
    self._content = bytes().join(self.iter_content(CONTENT_CHUNK_SIZE)) or bytes
()
  File "c:\python27\lib\site-packages\pip\_vendor\requests\models.py", line 660,
 in generate
    for chunk in self.raw.stream(chunk_size, decode_content=True):
  File "c:\python27\lib\site-packages\pip\_vendor\requests\packages\urllib3\resp
onse.py", line 344, in stream
    data = self.read(amt=amt, decode_content=decode_content)
  File "c:\python27\lib\site-packages\pip\_vendor\requests\packages\urllib3\resp
onse.py", line 301, in read
    data = self._fp.read(amt)
  File "c:\python27\lib\site-packages\pip\_vendor\cachecontrol\filewrapper.py",
line 54, in read
    self.__callback(self.__buf.getvalue())
  File "c:\python27\lib\site-packages\pip\_vendor\cachecontrol\controller.py", l
ine 297, in cache_response
    self.serializer.dumps(request, response, body=body),
  File "c:\python27\lib\site-packages\pip\download.py", line 281, in set
    return super(SafeFileCache, self).set(*args, **kwargs)
  File "c:\python27\lib\site-packages\pip\_vendor\cachecontrol\caches\file_cache
.py", line 99, in set
    with self.lock_class(name) as lock:
  File "c:\python27\lib\site-packages\pip\_vendor\lockfile\mkdirlockfile.py", li
ne 19, in __init__
    LockBase.__init__(self, path, threaded, timeout)
  File "c:\python27\lib\site-packages\pip\_vendor\lockfile\__init__.py", line 24
2, in __init__
    hash(self.path)))
  File "c:\python27\lib\ntpath.py", line 85, in join
    result_path = result_path + p_path
UnicodeDecodeError: 'ascii' codec can't decode byte 0xb3 in position 5: ordinal
not in range(128)

任何想法如何克服这个问题?我删除了Python 3.5的路径,但它没有帮助。

我也无法安装其他软件包。

4 个答案:

答案 0 :(得分:1)

这似乎是一个问题,而pip试图在缓存目录中创建一个锁文件,可能是因为通常存储缓存的用户主目录路径包含非ascii字符。

作为一种解决方法,您可以尝试将--no-cache-dir选项传递给pip,或者显式传递由onyl ascii字符组成的--cache-dir

答案 1 :(得分:0)

升级pip通常可以解决此类问题,请尝试:

pip install --upgrade pip

然后尝试重新安装大熊猫。

如果这不起作用,则有关于unicode字符的pip存在已知错误。有关详细信息,请参阅pip github page

答案 2 :(得分:0)

你可以尝试:

在Linux或macOS上:

pip install -U pip

在Windows上:

python -m pip install -U pip

或者您可以使用conda install替代piphttp://conda.pydata.org/docs/install/full.html ....

答案 3 :(得分:0)

我尝试了所有这些但仍然得到相同的错误,直到我运行命令

pip install --upgrade pip --no-cache-dir

再次运行第二个命令

pip install -U pip 

它已经解决了。现在我可以正常安装

pip install <package_name> 
pip install -r <file>