Python库打包分发
主要有以下步骤:
- 注册PyPI账号(执行一次)
- 安装打包分发工具(执行一次)
- 编写setup.py文件
- 通过命令打包分发
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了。需要注意的是新建包的名字不能在忽视大小写情况下和其他包重复。