Python> 正文

pipreqs导出当前项目所需的依赖包requirements.txt

2024-01-21T15:21:33+08:00

  如果在python项目全局环境里直接使用 pip freeze > requirements.txt 会导出大量与该项目无关的依赖,包括很多个包信息,其实这里是把你当前 python 环境的所有包的相关信息导出来了。如果我们只需导出当前项目所需的依赖包,还可以采用另外一种方式,使用工具:pipreqs

1、安装pipreqs:

pip install pipreqs 官方网站

2、进入当前项目目录下,导出依赖清单:

pipreqs ./

导包完成会在项目路径下生成一个requirements.txt文件。

如果遇到编码错误UnicodeDecodeError,则将指定编码为utf8:

pipreqs ./ --encoding=utf8
pipreqs ./ --encoding='iso-8859-1'

Usage:

Usage:
    pipreqs [options] [<path>]

Arguments:
    <path>                The path to the directory containing the application files for which a requirements file
                          should be generated (defaults to the current working directory)

Options:
    --use-local           Use ONLY local package info instead of querying PyPI
    --pypi-server <url>   Use custom PyPi server
    --proxy <url>         Use Proxy, parameter will be passed to requests library. You can also just set the
                          environments parameter in your terminal:
                          $ export HTTP_PROXY="http://10.10.1.10:3128"
                          $ export HTTPS_PROXY="https://10.10.1.10:1080"
    --debug               Print debug information
    --ignore <dirs>...    Ignore extra directories, each separated by a comma
    --no-follow-links     Do not follow symbolic links in the project
    --encoding <charset>  Use encoding parameter for file open
    --savepath <file>     Save the list of requirements in the given file
    --print               Output the list of requirements in the standard output
    --force               Overwrite existing requirements.txt
    --diff <file>         Compare modules in requirements.txt to project imports
    --clean <file>        Clean up requirements.txt by removing modules that are not imported in project
    --mode <scheme>       Enables dynamic versioning with <compat>, <gt> or <non-pin> schemes
                          <compat> | e.g. Flask~=1.1.2
                          <gt>     | e.g. Flask>=1.1.2
                          <no-pin> | e.g. Flask
分享到:

Ranvane的日常记录

关于我们 客服中心 广告服务 法律声明