zoukankan      html  css  js  c++  java
  • Python自定义CLI三方库

    一、注册一个pypi账号。

    https://pypi.org/

    二、github上创建一个项目。

    https://github.com/

    三、编写自己的python项目。

    项目结构(参考):https://github.com/fengmm521/pipProject

    先建一个目录,比如magetool,这个里边放的是你的项目代码。在这个magetool目录里,新建一个__init__.py,这个文件里可以什么都不用写,然后就是你要发布的.py文件

    四、编写setup.py

    # File Name: setup.py
    # Author: wusir
    # Mail: wusir666666@163.com
    # Created Time:  2019-3-26
    #############################################
    
    
    from setuptools import setup, find_packages
    
    setup(
        name = "InitReadme",
        version = "0.1.0",
        keywords = ("pip", "os"),
        description = "pip test",
        long_description = "pip test",
        license = "MIT Licence",
    
        url = "https://github.com/wusri66666/InitReadme.git",
        author = "wusir",
        author_email = "wusir666666@163.com",
    
        packages = find_packages(),
        include_package_data = True,
        platforms = "any",
        install_requires = [],
       scripts = [],
       entry_points={
      'console_scripts':['initcli=initcli.cli:main']
    },
    
    
      
    )

    1.name
    name = “InitReadme”,这个name参数后边的就是你的项目代码所在目录,也是你pip要上传的项目名称,其他人用pip install xxx来安装时,后边的xxx就是你的这个InitReadme

    2.version
    version = “0.1.0”,你工具的版本号,后期你工具更新了,要用pip来更新包的时候,会更新比当前版本号高的新版本。

    下边是pip 更新包的命令

    pip install --upgrade <包的名字>
    pip install -U <包的名字>

    3.packages
    packages = find_packages(),这个参数是导入目录下的所有__init__.py包

    4.install_requires
    install_requires = [],这是一个数组,里边包含的是咱的pip项目引用到的第三方库,如果你的项目有用到第三方库,要在这里添上第三方库的包名,如果用的第三方版本不是最新版本,还要有版本号。

    五:打包自已的项目

    在代码编写完成,自已测试后没有问题了,就可以打包了。 打包使用下边两个其中一个命令(我使用的是第二个):

    $ python setup.py bdist_egg # 生成类似 edssdk-0.0.1-py2.7.egg,支持 easy_install 

    $ python setup.py sdist # 生成类似 edssdk-0.0.1.tar.gz,支持 pip
    两个命令打包好之后都会生成build和dist两个目录,打包的文件会放在dist目录下,供后边上传到PyPi服务器

    六:上传到PyPi服务器

    twine upload dist/*

    执行完这行指令之后,会提示输入pypi的用户名和密码,正常输入就可以。

    七:pip安装使用

  • 相关阅读:
    数据库中的索引结构是什么?
    什么情况下适合建立索引?
    python requests https 访问出错
    Centos下 自动化配置SSH免密码登陆
    expect 批量增加用户及配置密码
    Shell 处理文件名中包含空格的文件
    Linux sort 命令
    ictclas bug修复
    [转]hadoop2.x常用端口
    在服务器上运行Jar包
  • 原文地址:https://www.cnblogs.com/wusir66/p/10601045.html
Copyright © 2011-2022 走看看