无法使用Twine上传到PyPi

问题描述 投票:5回答:4

我正在尝试使用以下命令将python包上传到PyPi:

pip install -e .
python setup.py bdist_wheel --universal
twine upload --repository-url https://upload.pypi.org/legacy/ dist/*

我收到此错误:

HTTPError:403客户端错误:身份验证信息无效或不存在。对于网址:https://upload.pypi.org/legacy/

我也尝试了以下命令:

twine upload dist/*
twine upload --repository-url pypi dist/*
twine upload --repository-url https://upload.pypi.org/legacy dist/*
python setup.py bdist_wheel --universal upload

与.pypirc文件位于同一目录我运行的命令是:

[distutils]
index-servers =
    pypi
    pypitest

[pypitest]
repository: https://testpypi.python.org/pypi/
username: <username>
password: <password>

[pypi]
repository: https://upload.pypi.org/legacy/
username: <username>
password: <password>

但我仍然要求输入密码。 (也尝试使用pypitest,在那里创建一个帐户,但得到相同的错误)

我也尝试过这样做但删除了存储库行。

我试图上传的包名曾经被占用,但现在已被删除 - https://pypi.python.org/pypi?name=&version=1.0.0&:action=display说找不到包

我正在使用的用户名和密码与我用于成功登录https://pypi.python.org/pypi?%3Aaction=login_form的用户名和密码相同

python pypi twine
4个回答
4
投票

它看起来像我正在使用的帐户的某种错误。以下步骤为我修复了它:

  1. 创建一个新账户
  2. 使用twine upload dist/*上传包含新帐户的软件包
  3. 将以前的帐户(您最初想要上传的帐户)作为所有者添加到包中

3
投票

我在the pypi instructions for creating a new package之后遇到了这个问题。该教程将引导您上传到他们的测试服务器(--repository-url https://test.pypi.org/legacy/),为此我总是得到403。

对于他们的实际上传服务器,(--repository-url https://upload.pypi.org/legacy/)我的凭据工作正常。很明显,他们的测试和实时服务器之间的凭据有一些差异,如果你遇到这个问题,这可能是值得考虑的。


2
投票

另一种选择可能是复制和粘贴不起作用 - 当我尝试在命令行中粘贴密码时显示此错误,但是当我手动输入它时它成功了。


1
投票

我有同样的问题。对我有用的是(1)添加新电子邮件,验证它并使其成为主要电子邮件。

© www.soinside.com 2019 - 2024. All rights reserved.