大道至简,知行合一。

在PyPI发布自己的Python库

Python语言的厉害之处在哪里?个人认为在于它强大的内置模块和丰富的第三方库,可以帮助我们进行快速开发,毕竟是站在巨人的肩膀上。每天用大神写好的轮子开发,但自己造轮子的心一直躁动不已。最近静极思动,着手做一个好用的工具包开源一下,所以对Python发布包到pypi的流程研究了一下,这里做一下简单整理记录。当然由于Python更新发展速度很快,PyPI的发布机制也不断更新,可能方法会生效,有需要的话可以参考官网文档。

PyPI(Python Package Index)是python官方的第三方库的仓库,所有人都可以下载第三方库或上传自己开发的库到PyPI。PyPI推荐使用pip包管理器来下载第三方库。PyPI可帮助您查找和安装Python社区开发和共享的软件。包作者使用PyPI来分发他们的软件 。

一 注册PyPI账号

登录PyPI官网,注册界面基本如上图,填写个人信息即可注册。

二 创建个人Python库

有了账号我们也要准备好要分享的Python库,具体功能自己把握,只要是你觉得好玩好用的都可以上传。

三 编辑setup.py文件

在你要发布的包目录下创建setup.py文件,并参照如下内容进行编辑。

from distutils.core import setup

setup(
    name = '下载的模块名',      #要和包源代码文件名一致
    version = '1.1.0',
    py_modules = ['你的轮子名'],
    author = '注册的账号',        
    author_email = 'xiaoming@163.com',
    url = '一个地址,比如github轮子下载地址啥的 ',
    description = '轮子的描述'   
    )

setup脚本是python中使用Distutils来构建、分发以及安装模块活动的中心。它的目的是使得软件可以正确安装。

这里setup.py文件可以自行创建,也可以使用Kennethreitz大神(requests库的作者)的模板,使用的方法是:

git clone  https://github.com/kennethreitz/setup.py

四 安装必要工具库

pip install --upgrade setuptools   #原则上有pip一定有setuptools,但是可以尝试升级一下
pip install  twine   #一个简化将库发布到PyPI流程的工具

五 打包上传

python setup.py sdist

sdist将会在setup.py同级目录创建一个dist文件夹,里面是压缩文件(Unix平台将会是tar包,Windows系统中将会是Zip压缩文件),这其中包含你的setup.py安装脚本和你的包模块。然后就可以解压安装了:

python setup.py install

setup.py参数简单介绍:

  • python setup.py build     # 编译
  • python setup.py install     #安装
  • python setup.py sdist       #生成压缩包(zip/tar.gz)
  • python setup.py bdist_wininst   #生成NT平台安装包(.exe)
  • python setup.py bdist_rpm #生成rpm包
  • python setup.py bdist –help-formats  #支持rpm、gztar、bztar、ztar、tar、wininst、zip

然后需要安装twine,并使用twine上传到PyPI。

#安装twine 
pip install twine
#上传
twine upload dist/*     #需要输出PyPI账号密码

OK,完成,现在就可以直接通过pip来安装自己发布的库使用了。

参考文献

赞(0)
未经允许不得转载:北凉柿子 » 在PyPI发布自己的Python库
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址