Pythonが独自開発したライブラリをPypiに公開


多くの人は自分のライブラリをpypiにオープンソースすることを望んで、自分の後で使用するのも便利で、方法はとても簡単で、以下のようにします:まず、あなたの自分で書いたライブラリは他の人に中のクラス、関数を呼び出すことを許可して、これらのものは1つのファイルに定義されて、testと仮定します.pyで.では、pytestという名前のパッケージをパブリッシュします.次に、次の手順に従います.
  • 任意選択1つのディレクトリをルートディレクトリ
  • とする.
  • 新しいpytestというフォルダ(あなたのオープンソースライブラリの名前は何ですか.これは何ですか)
  • pytestで__を作成init__.pyファイル、ファイルに1行追加:
  • name="package-self"
    

    それでいい
  • pytestフォルダで、あらかじめ作成したライブラリファイルtest.py(この例ではtest.py)を入れ、複数の
  • を入れることができます.
  • 現在、ルートディレクトリ(すなわちpytestの上位レベルディレクトリ)にsetupを新規作成する.pyファイル、ファイルには以下の内容が書かれています:
  • import setuptools
    
    with open("README.md", "r") as fh:
        long_description = fh.read()
    
    setuptools.setup(
        name="example-pkg-YOUR-USERNAME-HERE", # Replace with your own username
        version="0.0.1",
        author="Example Author",
        author_email="[email protected]",
        description="A small example package",
        long_description=long_description,
        long_description_content_type="text/markdown",
        url="https://github.com/pypa/sampleproject",
        packages=setuptools.find_packages(),
        classifiers=[
            "Programming Language :: Python :: 3",
            "License :: OSI Approved :: MIT License",
            "Operating System :: OS Independent",
        ],
        python_requires='>=3.0',
    )
    

    ここで、authtor、verison、author_Emailはあなた自身に変更して、urlはこのプロジェクトのgithubアドレスに変更して、packagesパラメータは上のを使うことができて、packages=[“pytest”]に変更することができます;また、classifierでは、異なるタイプのパラメータを追加できます.たとえば、オープンソースプロトコルでMITを選択すると、「License::OSI Approved::MIT License」と書きます.Mozillaなどの他のプロトコルを使用する場合は、「License::OSI Approved::Mozilla Public License 2.0(MPL 2.0)」と書きます.より多くのclassierに追加できるものはhttps://pypi.org/classifiers/の詳細はこちら.実は多くのものも自分で見て直すことができます.
  • 新規READMEファイル、LICENSEファイル、testsファイルもpytestと同級のルートディレクトリに置かれ、READMEはライブラリの説明を書き、LICENSEはあなたが選択したオープンソース許可の原文(例えばMIT LICENSE、このネット上で検索すればあり)、testsファイルは空にしておけばよい.
  • 次に、ライブラリのパッケージ化、アップロードを開始できます.まず、ルートディレクトリの下で実行します:
  • python setup.py sdist bdist_wheel
    

    次に、
    python -m twine upload --repository-url https://upload.pypi.org/legacy/ dist/*
    

    ヒントに従ってpypiのユーザー名、パスワードを入力すれば成功します.途中でライブラリがインストールされていないことを示す場合はpipを使用してインストールし、twineライブラリを使用する必要があります.
    皆さんの成功を祈ります.アップロードが完了すると、pip install自分のライブラリ名をこの例で使用できます.pip install後、pythonコードでfrom pytestを使用できます.test import*はtestを使用します.pyの中の対象になりました~