通过 pip 安装自己的代码包

news/2024/10/3 2:18:06

以前通过 pip 安装的时候总是很羡慕,别人的代码使用起来好方便啊,那时候觉得代码要提交到 pip 平台去管理肯定需要审核吧? 后来了解到自己的代码要可以 pip 安装不需要审核,只需要遵循几个步骤就能轻松实现:

  • 准备代码包
  • 通过 setuptools 打包
  • 通过 twine 上传 (需要 pypi 账号密码)

重点操作:

  1. setup.py 的编写
  2. python setup.py sdist 打包
  3. twine upload dist/* 上传

准备代码包

首先准备好代码目录,一般需要包含以下几部分:

  • 代码包
  • setup.py
  • README.md
  • LICENSE

整体的目录结构类似于这样:

 

setup.py 主要是打包时候需要运行的程序,可以在 官方文档 查看具体用法。

里面的内容是这样的:

 

long_description 表示上传的包的使用说明,上传完成以后会在 pypi 网站上显示出来。

 

通过 setuptools 打包

准备好文件之后,就可以通过 setuptools 打包了。先进入项目目录下,能找到 setup.py 这个文件, 执行:

python3 setup.py build sdist

 

通过 twine 上传

步骤1:先在 pypi网站 注册账号。

直接点这个链接注册:

注册好之后,生成一个 token:。由于我们是要上传新项目,所以不要限制 scope 到特定的项目。

⚠️注意:token 生成出来以后不要马上关掉页面,不然就没了!!!把 token 复制粘贴保存到个本地的文件里(你要手抄我不反对,一百多位,别抄错就行)。

然后,创建一个纯文本文件 $HOME/.pypirc,在里面写:

[pypi]
username = __token__
password = pypi-CDFMLR66666kLTI1NjQzZGUJXsgElwaS576OnvGVIshizhegedeshisabiJz

步骤2:通过 pip install twine,安装好 twine 包。 twine 是把代码上传到 pypi 的工具。

步骤3:进入项目目录,twine upload dist/* 上传 dist 文件

python3 -m twine upload dist/*

成功之后,可以在 pypi 搜索到你的包了:

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/29287.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

微信小程序使用微信云托管添加自定义域名并转发到pexels.com

背景:我要在小程序上显示pexels.com上的图片,然后我得先把pexels.com的域名添加到小程序的request合法域名中,但是pexels.com是国外的,在国内没有备案所以添加不了。解决方案就是:用一个已经备案好的域名进行转发,转发的服务器我选择的是微信云托管,备案好的域名还需要s…

【攻防技术系列】-- JNDI注入

JNDI概念首先第一个问题,什么是 JNDI?JNDI (Java Naming and Directory Interface),是Java平台提供的一个API,它允许Java应用程序访问不同的命名和目录服务。简而言之,JNDI为Java应用提供了一种统一的方式来查询和访问外部资源,如数据库、文件系统、远程对象等。 虽然有点…

[转]Cocos2dlua手游 Lua解密与资源解密实战

来自看雪:Cocos2dlua手游 Lua解密与资源解密实战 https://mp.weixin.qq.com/s/WeYxlXZvCPv_3nGgeKdunwCocos2dlua 逆向相关学习,略有删减,直接进入正文 APK大致如下:. ├── assets │ ├── res │ │ ├── ani │ │ │ └── logo │ │ │ …

Flink架构与原理

Flink集群运行剖析 Flink 运行时由两种类型的进程组成:一个 JobManager 和一个或者多个 TaskManager。 Client:Client是提交作业的客户端,虽然不是运行时和作业执行时的一部分,但它负责准备和提交作业到JobManager,它可以运行在任何机器上,只要与JobManager环境连通即可。…

Nexpose v6.6.250 for Linux Windows - 漏洞扫描

Nexpose v6.6.250 for Linux & Windows - 漏洞扫描Nexpose v6.6.250 for Linux & Windows - 漏洞扫描 Rapid7 Vulnerability Management, Release May 02, 2024 请访问原文链接:Nexpose v6.6.250 for Linux & Windows - 漏洞扫描,查看最新版。原创作品,转载请保…

Metasploit Pro 4.22.3-2024050201 (Linux, Windows) - 专业渗透测试框架

Metasploit Pro 4.22.3-2024050201 (Linux, Windows) - 专业渗透测试框架Metasploit Pro 4.22.3-2024050201 (Linux, Windows) - 专业渗透测试框架 Rapid7 Penetration testing, Release May 03, 2024 请访问原文链接:Metasploit Pro 4.22.3-2024050201 (Linux, Windows) - 专…