当前位置: 首页 > news >正文

查找python项目依赖并生成requirements.txt——pipreqs 真是很好用啊

查找python项目依赖并生成requirements.txt

转自:http://blog.csdn.net/orangleliu/article/details/60958525

一起开发项目的时候总是要搭建环境和部署环境的,这个时候必须得有个python第三方包的list,一般都叫做requirements.txt。 如果一个项目使用时virtualenv环境,还好办 pip freeze 就可以解决,但是如果一个项目的依赖list没有维护,而且又是环境混用,那就不好整理的呀,不过,这里安利一个工具 pipreqs,可以自动根据源码生成 requirements.txt .

使用pip freeze

$ pip freeze > requirements.txt

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

使用 pipreqs

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

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

# pip install pipreqs

# 使用方式也比较简单
pipreqs ./

INFO: Starting new HTTPS connection (1): pypi.python.org INFO: Starting new HTTPS connection (1): pypi.python.org INFO: Starting new HTTPS connection (1): pypi.python.org INFO: Starting new HTTPS connection (1): pypi.python.org INFO: Starting new HTTPS connection (1): pypi.python.org INFO: Starting new HTTPS connection (1): pypi.python.org INFO: Successfully saved requirements file in ./requirements.txt cat requirements.txt Django == 1.6 django_redis == 4.3.0 redis == 2.10.5 django_redis_cache == 1.6.5 simplejson == 3.8.2 Twisted == 16.0.0 pycrypto == 2.6.1 ConcurrentLogHandler == 0.9.1 cx_Oracle == 5.2.1 ujson == 1.35

有时候结果可能会有些偏差,这里并没有用Oracle的相关驱动,根据的需要修改 requirements.txt 就好了。

how python project auto generate requirements.txt ?

相关文章:

  • 从如何停掉 Promise 链说起
  • visio扩大画布的大小
  • 拓扑规则翻译函数(转)
  • java读取文件夹下所有文件并替换文件每一行中指定的字符串
  • 6.2. group by
  • 纪念第一次在博客园的书写
  • 第二次冲刺站立会议(7)
  • python学习笔记(八):异常处理
  • python中package机制的两种实现方式
  • 2017年年度总结
  • 原来Intel CPU漏洞是它引起的!
  • 在全是无人车的世界里,过马路是种怎样的体验?
  • DeepMind新论文:基于变分方法的自编码生成对抗网络
  • document.getElementByName() 获取值得问题
  • Python3虚拟环境--venv
  • 2017 前端面试准备 - 收藏集 - 掘金
  • 4月23日世界读书日 网络营销论坛推荐《正在爆发的营销革命》
  • Android Volley源码解析
  • Android 控件背景颜色处理
  • - C#编程大幅提高OUTLOOK的邮件搜索能力!
  • gf框架之分页模块(五) - 自定义分页
  • Magento 1.x 中文订单打印乱码
  • MySQL主从复制读写分离及奇怪的问题
  • OSS Web直传 (文件图片)
  • Spring核心 Bean的高级装配
  • Twitter赢在开放,三年创造奇迹
  • 前端面试之CSS3新特性
  • 前端之Sass/Scss实战笔记
  • 事件委托的小应用
  • 一个普通的 5 年iOS开发者的自我总结,以及5年开发经历和感想!
  • 自制字幕遮挡器
  • 阿里云ACE认证之理解CDN技术
  • #NOIP 2014# day.2 T2 寻找道路
  • #常见电池型号介绍 常见电池尺寸是多少【详解】
  • #我与Java虚拟机的故事#连载01:人在JVM,身不由己
  • (1) caustics\
  • (9)YOLO-Pose:使用对象关键点相似性损失增强多人姿态估计的增强版YOLO
  • (iPhone/iPad开发)在UIWebView中自定义菜单栏
  • (Redis使用系列) Springboot 实现Redis 同数据源动态切换db 八
  • (ZT)北大教授朱青生给学生的一封信:大学,更是一个科学的保证
  • (安卓)跳转应用市场APP详情页的方式
  • (翻译)Entity Framework技巧系列之七 - Tip 26 – 28
  • (附源码)spring boot智能服药提醒app 毕业设计 102151
  • (附源码)计算机毕业设计SSM在线影视购票系统
  • (续)使用Django搭建一个完整的项目(Centos7+Nginx)
  • (已更新)关于Visual Studio 2019安装时VS installer无法下载文件,进度条为0,显示网络有问题的解决办法
  • (已解决)什么是vue导航守卫
  • (转)iOS字体
  • (转)Oracle存储过程编写经验和优化措施
  • (总结)Linux下的暴力密码在线破解工具Hydra详解
  • .NET 反射 Reflect
  • .NET 自定义中间件 判断是否存在 AllowAnonymousAttribute 特性 来判断是否需要身份验证
  • .net6解除文件上传限制。Multipart body length limit 16384 exceeded
  • .Net的C#语言取月份数值对应的MonthName值
  • .one4-V-XXXXXXXX勒索病毒数据怎么处理|数据解密恢复