推荐学习书目
› Learn Python the Hard Way
Python Sites
› PyPI - Python Package Index
› http://diveintopython.org/toc/index.html
› Pocoo
值得关注的项目
› PyPy
› Celery
› Jinja2
› Read the Docs
› gevent
› pyenv
› virtualenv
› Stackless Python
› Beautiful Soup
› 结巴中文分词
› Green Unicorn
› Sentry
› Shovel
› Pyflakes
› pytest
Python 编程
› pep8 Checker
Styles
› PEP 8
› Google Python Style Guide
› Code Style from The Hitchhiker's Guide
shawndev
V2EX  ›  Python

怎么实现 pypi 安装后在$path 目录下增加可执行文件?

  •  
  •   shawndev · Jan 4, 2019 · 2038 views
    This topic created in 2828 days ago, the information mentioned may be changed or developed.

    像 you-get 一样

    $ pip3 install you-get
    $ which you-get
    /usr/local/bin/you-get
    $ cat /usr/local/bin/you-get
    #!/usr/local/opt/python/bin/python3.7
    
    # -*- coding: utf-8 -*-
    import re
    import sys
    
    from you_get.__main__ import main
    
    if __name__ == '__main__':
        sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
        sys.exit(main())
    

    查看了源码和 setup.py ,并没有看出什么端倪。

    Supplement 1  ·  Jan 4, 2019
    console_scripts 添加成功, 安装后首次执行固定无输出,v 友们可以帮忙测试一下吗?或者知道原因的回复一下也可以。
    7 replies  •  2019-01-04 12:32:23 +08:00
    shawndev
        1
    shawndev  
    OP
       Jan 4, 2019
    django-admin 同理
    shawndev
        2
    shawndev  
    OP
       Jan 4, 2019
    我发布了一个 pypi,叫作 ghtrending,每次都要 python3 -m ghtrending 很麻烦,想简化成 ghtrending
    frostming
        3
    frostming  
       Jan 4, 2019
    setup 函数里加上:

    entry_points = {
    'console_scripts': ['ghtrending=ghtrending.__main__:main']
    }

    https://packaging.python.org/guides/distributing-packages-using-setuptools/#id59
    frostming
        4
    frostming  
       Jan 4, 2019
    你看看 you-get 的 setup.py 怎么写的就行了
    shawndev
        6
    shawndev  
    OP
       Jan 4, 2019
    @frostming 感谢,我试一下,因为没看到 setup 里面由路径相关的设置所以没意识到。
    shawndev
        7
    shawndev  
    OP
       Jan 4, 2019
    @Trim21 感谢,我试一下。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2226 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 00:22 · PVG 08:22 · LAX 17:22 · JFK 20:22
    ♥ Do have faith in what you're doing.