You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置Python包,使pip安装时将命令行工具放入环境bin/目录?

实现Python包安装后添加可直接调用的命令行工具

要复刻gdown的命令行工具安装行为,核心是利用Python打包工具(setuptools)的console_scripts入口配置,pip安装时会自动在环境的bin/(Linux/macOS)或Scripts/(Windows)目录生成可执行脚本,无需用户手动配置路径。以下是具体实现方式:

方法一:使用pyproject.toml(推荐,现代Python打包标准)

在你的包根目录创建pyproject.toml文件,添加console_scripts入口配置:

[project]
name = "你的包名"
version = "0.1.0"
# 其他基础配置(作者、依赖等)

[project.entry-points."console_scripts"]
# 格式:命令名 = "包内模块路径:要调用的函数名"
gdown-like-cmd = "your_package.cli:main"

比如gdown的配置就是:gdown = "gdown.cli:main",对应它的gdown/cli.py里的main()函数。

方法二:使用setup.py(兼容旧版打包方式)

如果你的项目仍用setup.py,可以在其中添加entry_points配置:

from setuptools import setup

setup(
    name="你的包名",
    version="0.1.0",
    # 其他配置
    entry_points={
        "console_scripts": [
            "gdown-like-cmd=your_package.cli:main",
        ]
    }
)

关键细节

  • 确保你指定的函数(比如cli.py里的main())是可独立运行的,通常需要用argparse或click处理命令行参数,示例:
# your_package/cli.py
import argparse

def main():
    parser = argparse.ArgumentParser(description="你的命令行工具描述")
    # 添加参数定义
    args = parser.parse_args()
    # 执行逻辑

if __name__ == "__main__":
    main()
  • 开发阶段可以用pip install -e .(可编辑模式)安装包,修改配置后能立即生效,方便测试命令是否可正常调用。
  • gdown的实现正是基于这个机制,你可以再检查它的pyproject.toml文件,console_scripts字段就是生成命令行工具的核心配置。

内容的提问来源于stack exchange,提问作者vs07

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 05:55:02