【python实操】python脚本封装成 pip 包并上传
- 官网链接:pypi官网(需要注册登录)
- 本文以 myuploadtest 为包名进行举例,实际处理中需换成自己的包名。
1. 打包文件目录结构创建
- 在本地需要按照下述目录结构进行创建。
{myuploadtest}/ # 包名可替换 ├── myuploadtest # 包名可替换 │ ├── __init__.py │ └── test.py # 脚本名称可替换 ├── setup.py └── README.rst
1.1 myuploadtest(需替换为自己的包名)
- __init__.py:脚本接口文件。

- test.py:核心,具体功能实现脚本。

1.2 setup.py
- 构建脚本,描述文件的详细信息供打包使用,如包名、版本号等。

- 代码内容:
from distutils.core import setup from setuptools import find_packages with open("README.rst", "r") as f: long_description = f.read() setup(name='myuploadtest', # 包名 version='0.1.0', # 版本号 description='test pip upload', long_description=long_description, author='lily', author_email='2239041944@qq.com', url='', install_requires=[], # 依赖包会同时被安装 license='MIT', packages=find_packages())
1.3 README.rst
- 使用
reStructuredText语法的文件进行项目描述,此文件即为项目主页,可详细介绍有关的所有内容,如项目功能、安装及使用等。

1.4 包名选择注意事项
- 在取包名时,应现在官网已发布包中搜索包名,包名需不存在或未注册才可保证后续上传成功。

2. 本地安装及测试 python 包
2.1 本地安装
- 在创建的一级目录内执行
python setup.py install,即可实现本地的脚本安装。

- 也可以使用
python setup.py develop安装,这种方式以开发模式进行安装,每次修改代码之后不需要重新安装就可以使用最新的代码,在更新使用时较方便。
2.2 本地测试
- 在终端中输入
python,开启python指令后依次输入import myuploadtest、myuploadtest.test.test_pip(),看到显示 Test successfully!!! 即成功。

3. pip 打包、上传及测试
3.1 打包
- 使用
python setup.py sdist build构建及打包,完成后可在当前目录下的 dist 文件中找到以tar.gz结尾的文件。


- 使用
python setup.py bdist_wheel打包 wheel 格式的包,完成后可在当前目录下的 dist 文件中找到以whl结尾的文件。


3.2 上传
- 使用
twine upload --repository-url https://upload.pypi.org/legacy/ dist/*后输入username和password即可完成上传。

- 打开官网,在 Your projects 下即可找到上传的 pip 包!

- 注意事项!!!
- 使用用户名和密码上传包会报 ERROR,这是因为目前官方已不支持用户名和密码上传包的功能,需要获取 API 进行上传。见链接: pip 包上传ERROR: Username/Passward authentication is no longer supported.

- 使用用户名和密码上传包会报 ERROR,这是因为目前官方已不支持用户名和密码上传包的功能,需要获取 API 进行上传。见链接: pip 包上传ERROR: Username/Passward authentication is no longer supported.
3.3 测试
- 在本地环境中使用
pip install myuploadtest安装。

- 编写测试脚本。

- 运行测试脚本后输出Test successfully!!! 即成功。

参考链接: 官方文档-如何打包你的 python 代码
973

被折叠的 条评论
为什么被折叠?



