发布自己的python轮子——上传PyPI

发布自己的python轮子

最近要帮忙发布一个python包,所以自己看了看资料、踩了踩坑。这里理理整个流程


其实整个过程不是很复杂,基本上只要仿照官方给的PyPA的例子就可以了。

  1. 首先cd进入自己的项目目录下,整个项目的目录结构可以参考上面给出的例子。

  2. 首先你要有一个自己的setup.py,这是最关键的部分,它负责声明这个包的一些依赖和入口。至于setup怎么写,就参考sample或者官方文档Tutorials吧。
    setup里面最重要的还是 nameversion 了,它们直接对应你上传的包的名字和版本号,另外作者名字和PyPI账号不需要一致。
    除此之外,你可能还需要一个README.rst作为文档以及一个 MANIFEST.in用来添加诸如LICENSE.txt之类的附加文件。规则相见官网。
    .rst文件可以上网找个在线编辑器,找个教程速成一下。

  3. 接下来去注册一个PyPI账号,链接

  4. 在项目的顶级目录下创建文件.pypirc,内容为:

[distutils]
index-servers=
    pypi
    testpypi

[pypi]
username = <username>
password = <password>

[testpypi]
repository: https://test.pypi.org/legacy/

username = <username>
password = <password>

注:用户名和密码是PyPI的账户,由于是明文,建议不填。

之后我们使用twine这个包,可以更安全地上传。

pip install twine
python setup.py sdist bdist_wheel
twine upload --repository testpypi dist/*
  • 测试服务器。之前看教程没有提到这点,其实测试包应该先发布在这里。官网说明在这里testpypi
python setup.py sdist bdist_wheel
twine upload dist/*
  • 正式提交。
    NOTE:经过调查,remove掉的版本号并不能重新提交,只能通过修改setup.py的name或者version来提交一个新的版本(注:每次修改之后,要删掉dist文件夹下面的压缩包,然后再python setup.py sdist bdist_wheel一遍)。因而每次提交之前都先交到test服务器上去,之前看的教程没有提到,就很坑。。。

完。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值