这几天,我在上传将我的项目上传到pypi时,发生了很无语的报错,分享出来给大家避避坑
首先,关于基本的打包上传步骤先不讲了,大家参考https://packaging.python.org/en/latest/tutorials/packaging-projects/里的文档来做就好了,应该不难
其次,当我使用twine,尝试登录时,输入我的账号密码,发现报错了,简单的看了下报错信息,我突然明白是因为用了2FA,没办法使用账号密码登录.这也不是这贴的重点
我按照操作,生成了API token,并在用户一栏填了__token__
,并复制粘贴入了token,却发现一直报错
HTTPError: 403 Client Error: Invalid or non-existent authentication information. for url: https://upload.pypi.org/legacy/
找了好一阵没找到解决方法,当我试着在debian上上传时,竟然成功了,直到后来,我终于找到的问题的答案
https://github.com/python/cpython/issues/81607
这个是Windows终端特有的一个bug
解决方案是:要么不用Windows终端,要么,我这里以Powershell为例,上方空白处右键->属性->选项->启用"将 Ctrl+Shift+C/V 作为复制/粘贴的快捷键"
什么,你说为什么不手打?冷知识,这个token有180个字符
完毕