【问题标题】:Protocol Error on basket download request购物篮下载请求协议错误
【发布时间】:2016-08-14 20:09:32
【问题描述】:

我正在尝试使用篮子下载 Pypi 包。但命令显示“ProtocolError for pypi.python.org/pypi: 403 Must access using HTTPS instead of HTTP”消息。

我的命令是:sudo basket download unittest2

回复是:

`Traceback (most recent call last):
  File "/usr/local/bin/basket", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python2.7/dist-packages/basket/main.py", line 338, in main
    return basket.cmd_download(argv)
  File "/usr/local/lib/python2.7/dist-packages/basket/main.py", line 220, in cmd_download
    info = self._find_package_name(package)
  File "/usr/local/lib/python2.7/dist-packages/basket/main.py", line 88, in _find_package_name
    for info in self.client.search({'name': query}):
  File "/usr/lib/python2.7/xmlrpclib.py", line 1243, in __call__
    return self.__send(self.__name, args)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1602, in __request
    verbose=self.__verbose
  File "/usr/lib/python2.7/xmlrpclib.py", line 1283, in request
    return self.single_request(host, handler, request_body, verbose)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1331, in single_request
    response.msg,
xmlrpclib.ProtocolError: <ProtocolError for pypi.python.org/pypi: 403 Must access using HTTPS instead of HTTP>`

但是 pip 下载命令对我来说工作正常。

我的命令和响应是:`

pip download unittest2
Collecting unittest2
  Downloading unittest2-1.1.0-py2.py3-none-any.whl (96kB)
    100% |████████████████████████████████| 102kB 107kB/s 
  Saved ./unittest2-1.1.0-py2.py3-none-any.whl
Collecting argparse (from unittest2)
  Downloading argparse-1.4.0-py2.py3-none-any.whl
  Saved ./argparse-1.4.0-py2.py3-none-any.whl
Collecting traceback2 (from unittest2)
  Downloading traceback2-1.4.0-py2.py3-none-any.whl
  Saved ./traceback2-1.4.0-py2.py3-none-any.whl
Collecting six>=1.4 (from unittest2)
  Downloading six-1.10.0-py2.py3-none-any.whl
  Saved ./six-1.10.0-py2.py3-none-any.whl
Collecting linecache2 (from traceback2->unittest2)
  Downloading linecache2-1.0.0-py2.py3-none-any.whl
  Saved ./linecache2-1.0.0-py2.py3-none-any.whl
Successfully downloaded unittest2 argparse traceback2 six linecache2

`

篮子有什么问题?以及如何解决?

【问题讨论】:

    标签: python pip pypi


    【解决方案1】:

    您必须进入 /path-to-python-site-packages/basket/main.py,并编辑以下行:

    PYPI_ENDPOINT = 'http://pypi.python.org/pypi'
    

    并将其更改为“https”:

    PYPI_ENDPOINT = 'https://pypi.python.org/pypi'
    

    那么您的下载应该可以工作了。问题与提供给“xmlrpclib.ServerProxy”的“http”有关

    【讨论】:

    • 在我的 windows python 3 环境中工作,未在我的 Ubuntu python 2 环境中测试。我认为它会在这个补丁后工作。无论如何决定报告购物篮存储库的补丁。
    猜你喜欢
    • 1970-01-01
    • 2019-05-26
    • 2011-06-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-24
    • 1970-01-01
    相关资源
    最近更新 更多