Python库打包分发

主要有以下步骤:

  1. 注册PyPI账号(执行一次)
  2. 安装打包分发工具(执行一次)
  3. 编写setup.py文件
  4. 通过命令打包分发

1.注册PyPI账号

进入PyPI的官网,进去注册账号密码,绑定邮箱等。

在成功注册账号之后,创建~/.pypirc文件,在文件中配置自己的PyPI访问地址和账号密码等信息,如下:

[distutils]
index-servers = pypi

[pypi]
username:xxx
password:xxx

2.安装打包分发工具

这里通过twine来打包安装。

通过以下命令下载:

pip install twine

3.编写setup.py文件

格式不再详述,具体查看参考1. 举例如:

from distutils.core import setup
import setuptools

with open('./README.md', 'r', encoding='utf8') as f:
    long_description = f.read()

with open('./requirements.txt', 'r', encoding='utf8') as f:
    install_requires = list(map(lambda x: x.strip(), f.readlines()))

setup(
    name='lightNLP',
    version='0.3.2.0',
    description="lightsmile's nlp library",
    author='lightsmile',
    author_email='iamlightsmile@gmail.com',
    url='https://github.com/smilelight/lightNLP',
    packages=setuptools.find_packages(),
    install_requires=install_requires,
    long_description=long_description,
    long_description_content_type='text/markdown',
    license='Apache-2.0',
    classifiers=[
        'Development Status :: 4 - Beta',
        'Operating System :: OS Independent',
        'Intended Audience :: Developers',
        'License :: OSI Approved :: BSD License',
        'Programming Language :: Python',
        'Programming Language :: Python :: 3',
        'Programming Language :: Python :: 3.6',
        'Programming Language :: Python :: 3.7',
        'Topic :: Software Development :: Libraries'
    ],
)

4.通过命令打包分发

打包

在setup.py文件目录下执行:

python setup.py sdist bdist_wheel

如果报error: invalid command 'bdist_wheel'的错的话,可以执行以下命令:

pip install wheel

分发

在setup.py文件目录下执行:

twine upload dist/*

后记

之后便可以登录PyPI网站查看自己的projects了。需要注意的是新建包的名字不能在忽视大小写情况下和其他包重复。

参考

  1. Python 库打包分发(setup.py 编写)简易指南
  2. pypi twine
  3. Why is python setup.py saying invalid command ‘bdist_wheel’ on Travis CI? - Stack Overflow

评论




博客内容遵循 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 协议

本站使用 Volantis 作为主题,总访问量为
载入天数...载入时分秒...
冀ICP备20001334号