V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
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 · 2019-01-04 10:50:58 +08:00 · 1325 次点击
    这是一个创建于 1932 天前的主题,其中的信息可能已经有所发展或是发生改变。

    像 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 ,并没有看出什么端倪。

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

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

    https://packaging.python.org/guides/distributing-packages-using-setuptools/#id59
    frostming
        4
    frostming  
       2019-01-04 11:32:07 +08:00
    你看看 you-get 的 setup.py 怎么写的就行了
    Trim21
        5
    Trim21  
       2019-01-04 11:33:23 +08:00
    shawndev
        6
    shawndev  
    OP
       2019-01-04 12:32:14 +08:00
    @frostming 感谢,我试一下,因为没看到 setup 里面由路径相关的设置所以没意识到。
    shawndev
        7
    shawndev  
    OP
       2019-01-04 12:32:23 +08:00
    @Trim21 感谢,我试一下。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   4917 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 05:38 · PVG 13:38 · LAX 22:38 · JFK 01:38
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.