pypi 发布python包
pypi.org 服务端已经废止了username/password的方式了(2024-01-09),这就必须配置为 publisher 或者 api token 的方式。但是前者好像需要付费,而最终配置成功的,还是后者。
1. 其实跟npm发布类似,python这个也需要$HOME目录下面有一个 .pypirc 文件,不过这个文件是需要自己手动创建的。
[distutils]
index-servers =
pypi
your_pkg_name
[pypi]
username = __token__
password = your_token
[your_pkg_name]
repository = https://upload.pypi.org/legacy/ #就是这个值,不要再改了
username = __token__
password = your_token
其实pypi网站本身也有示例:
2. 确保 setuptools 已经安装,否则运行 pip install setuptools;
除了 需要 pip install twine 之外,还需要安装build,也就是 pip install build
否则运行 总是会给你返回 C:\Users\Administrator\AppData\Local\Programs\Python\Python312\python.exe: No module named build 而并不执行打包命令。
3. 完成第1步的操作之后,执行 twine upload dist/* --repository your_pkg_name 就可以发布了。
4. 看其它文档说可以用 keyring 包来设置python的api 的token,但是实际上并不需要。