python打包到pypi小結

2022-07-03 13:15:09 字數 1847 閱讀 1658

pypi的全稱是python package index,是python的乙個軟體倉庫。pypi可以幫助你找到和安裝由社群開發和共享的python庫。包的作者可以使用pypi來分發和共享其所開發的python庫。如下圖1是pypi的首頁,可以看到pypi已經擁有近30w的使用者以及超過16w的專案。

圖1:pypi首頁如果你的python專案比較複雜,包含了多個層級的複雜的模組,你可以參考下面的blog來編寫setup.py的packages選項

附個人專案netcloud的setup.py示例:

#!/usr/bin/env python

# coding=utf-8

from setuptools import setup

setup(

name="netcloud",

version="1.0.2",

description='''網易雲**綜合爬蟲,可以實現:

2.支援模擬登入,提供包括**,歌手,歌單,dj等全方位的api支援''',

author='lyrichu',

author_email='[email protected]',

url = "",

maintainer='lyrichu',

maintainer_email='[email protected]',

packages=['netcloud.analyse','netcloud.crawler',

'netcloud.login','netcloud.util',

'netcloud.demo','netcloud.test'],

package_data=,

install_requires=[

'pycrypto',

'requests',

'pyecharts',

'pandas',

'jieba',

'wordcloud',

'scipy'])

上面編寫的setup.py中尤其需要注意的是packagespackage_data兩個引數,這兩個引數分別決定了python庫模組的結構以及資源檔案的打包。
python setup.py install
# 原始碼包,這會得到乙個.tar.gz的檔案

python setup.py sdist build

# 預編譯包,這會得到乙個.whl的檔案

python setup.py bdist_wheel --universal

# 上傳原始碼包

python setup.py sdist upload

# 上傳預編譯包

python setup.py bdist_wheel upload

簡單來說,相比setuptools,twine是乙個更加安全和強大的pypi包發布工具,具體介紹和用法可以參考官方文件。

twine 上傳到pypi的命令如下:

# 首先安裝twine

sudo pip install twine

# 上傳打包好的檔案到pypi

twine upload dist/*

twine上傳的過程中會提示你輸入pypi的使用者名稱和密碼,直接按照提示輸入即可。正常情況下你就可以成功發布你的pyhton庫了。

發布完成之後,你就可以使用pip命令安裝你自己的庫了,你可以試著安裝並測試一下你的庫在本機是否可以正常工作。

python打包上傳至pypi實踐

在這裡 很簡單,直接註冊就好 注意參考標準目錄檔案,常用結構如 readme.md docs project init.py main.py modulea init.py packagea.py moduleb init.py setup.py tests modulea test package...

構建和發布Python模組到PyPI

建立要發布的模組資料夾 構建乙個發布檔案 開啟命令終端 cd 到資料夾位置,然後輸入命令python setup.py sdist回車,此時python模組已經構建完成。註冊pypi賬戶 第一次在pypi上發布專案,需要先註冊pypi賬戶。上傳專案到pypi 在命令列輸入以下命令twine uplo...

將python包發布到PyPI和製作whl檔案

怎樣將自己寫的包傳達到pypi 發布你自己的輪子 pypi打包上傳實踐 pypi官網上傳包教程 wheel和egg都是python的打包格式,目的是支援不需要編譯或製作的安裝過程,實際上也是一種壓縮檔案,將.whl的字尾改為.zip即可可看到壓縮包裡面的內容。按照官網說法,wheels是發行版pyt...