zoukankan      html  css  js  c++  java
  • pipreqs------查找python项目依赖并生成requirements.txt

      项目开发的时候,总是要搭建和部署环境,这时,就需要一个python第三方包的list,一般叫做requirements.txt。如果项目使用virtualenv环境,直接使用pip freeze即可,但是如果项目的依赖没有维护,就会很麻烦,这时我们就需要一个叫pipreqs的工具,可以帮助我们自动生成requirements.txt文件。

     

    使用pip freeze

    $ pip freeze > requirements.txt

    这种方式配合virtualenv 才好使,否则把整个环境中的包都列出来了。

     pipreqs

      这个工具的好处是可以通过对项目目录的扫描,自动发现使用了那些类库,自动生成依赖清单。

      缺点是可能会有些偏差,需要检查并自己调整下。

    安装:

    pip install pipreqs

    用法:   

      在项目的根目录下使用    pipreqs ./   

      如果是Windows系统,会报编码错误 (UnicodeDecodeError: 'gbk' codec can't decode byte 0xa8 in position 24: illegal multibyte sequence)  

      使用时,指定编码格式      pipreqs ./ --encoding=utf8

      生成requirements.txt 文件后,可以根据这个文件下载所有的依赖

      用法:pip install -r requriements.txt 即可

     附:

    详细用法:
    pipreqs [options] <path>

    选项:
    --use-local仅使用本地包信息而不是查询PyPI
    --pypi-server <url>使用自定义PyPi服务器
    --proxy <url>使用Proxy,参数将传递给请求库。你也可以设置
    终端中的环境参数:
    $ export HTTP_PROXY =“http://10.10.1.10:3128”
    $ export HTTPS_PROXY =“https://10.10.1.10:1080”
    --debug打印调试信息
    --ignore <dirs> ...忽略额外的目录
    --encoding <charset>使用编码参数打开文件
    --savepath <file>保存给定文件中的需求列表
    --print输出标准输出中的需求列表
    --force覆盖现有的requirements.txt
    --diff <file>将requirements.txt中的模块与项目导入进行比较。
    --clean <file>通过删除未在项目中导入的模块来清理requirements.txt。

  • 相关阅读:
    Objective-C method及相关方法分析
    java对象和json数据转换实现方式1-使用json-lib实现
    java中TCP传输协议
    【剑指Offer学习】【面试题27:二叉搜索树与双向链表】
    4.2.2 MINUS
    Hadoop for .NET Developers
    在命名空间下定义类型
    Android NDK课程录制完毕上线
    全然同态加密
    从golang的垃圾回收说起(下篇)
  • 原文地址:https://www.cnblogs.com/zhaopanpan/p/9383350.html
Copyright © 2011-2022 走看看