Python项目生成所有依赖包的清单
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Python项目生成所有依赖包的清单,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3613字,纯文字阅读大概需要6分钟。
内容图文
![Python项目生成所有依赖包的清单](/upload/InfoBanner/zyjiaocheng/671/7e8d37313e96418baf2c99181fea3d7c.jpg)
最近写完的自动化脚本,分享给同事的时候发现依赖包很难解决(使用的不是virtualenv环境)。想起来之前看开源接口平台项目的时候可以一键下载依赖包,于是就找到了第三方包pipreqs,可以自动帮助我们自动生成requirements.txt
- github原文介绍:pipreqs-根据任何项目的导入生成pip requirements.txt文件
链接:https://github.com/bndr/pipreqs
第一步:下载pipreqs工具包(pip install pipreqs)
Microsoft Windows [版本 10.0.17134.1069]
(c) 2018 Microsoft Corporation。保留所有权利。
C:\Users\wy.DESKTOP-KENPKKP\Desktop\Dingda\dingAPI>pip install pipreqs
Collecting pipreqs
Downloading https://files.pythonhosted.org/packages/f8/8d/2e7c15bc5fcab54f9c5b404b5668fdac65f5e3224b2116097fae1299fc98/pipreqs
-0.4.9-py2.py3-none-any.whl
Collecting docopt
Downloading https://files.pythonhosted.org/packages/a2/55/8f8cab2afd404cf578136ef2cc5dfb50baa1761b68c9da1fb1e4eed343c9/docopt-
0.6.2.tar.gz
Collecting yarg
Downloading https://files.pythonhosted.org/packages/8b/90/89a2ff242ccab6a24fbab18dbbabc67c51a6f0ed01f9a0f41689dc177419/yarg-0.
1.9-py2.py3-none-any.whl
Installing collected packages: docopt, yarg, pipreqs
Running setup.py install for docopt ... done
Successfully installed docopt-0.6.2 pipreqs-0.4.9 yarg-0.1.9
第二步:切换到项目路径下,生成依赖包的txt文档(pipreqs ./ --encoding=utf8)
期间遇到报错:编码错误(UnicodeDecodeError: 'gbk' codec can't decode byte 0x95 in position 40)
C:\Users\wy.DESKTOP-KENPKKP\Desktop\Dingda\dingAPI>pipreqs ./
Traceback (most recent call last):
File "c:\users\wy.desktop-kenpkkp\appdata\local\programs\python\python36\lib\runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
......
extra_ignore_dirs=extra_ignore_dirs)
File "c:\users\wy.desktop-kenpkkp\appdata\local\programs\python\python36\lib\site-packages\pipreqs\pipreqs.py", line 75, in ge
t_all_imports
contents = f.read()
UnicodeDecodeError: 'gbk' codec can't decode byte 0x95 in position 40: illegal multibyte sequence
找到原因是因为在Windows下需要制定编码方式为:uft-8,操作如下
C:\Users\wy.DESKTOP-KENPKKP\Desktop\Dingda\dingAPI>pipreqs ./ --encoding=utf8
INFO: Successfully saved requirements file in ./requirements.txt
第三步:查看需要的依赖包(type requirements.txt)
C:\Users\wy.DESKTOP-KENPKKP\Desktop\Dingda\dingAPI>type requirements.txt
requests==2.18.4
xlutils==2.0.0
xmltodict==0.12.0
xlrd==1.2.0
dicttoxml==1.7.4
下载依赖包方法(pip install -r requriements.txt)
C:\Users\wy.DESKTOP-KENPKKP\Desktop\Dingda\dingAPI>pip install -r requirements.txt
Requirement already satisfied: requests==2.18.4 in c:\users\wy.desktop-kenpkkp\appdata\local\programs\python\python36\lib\site-p
ackages (from -r requirements.txt (line 1)) (2.18.4)
Requirement already satisfied: xlutils==2.0.0 in c:\users\wy.desktop-kenpkkp\appdata\local\programs\python\python36\lib\site-pac
kages (from -r requirements.txt (line 2)) (2.0.0)
Requirement already satisfied: xmltodict==0.12.0 in c:\users\wy.desktop-kenpkkp\appdata\local\programs\python\python36\lib\site-
packages (from -r requirements.txt (line 3)) (0.12.0)
Requirement already satisfied: xlrd==1.2.0 in
附带pipreqs详细用法
gitbug地址:https://github.com/bndr/pipreqs
- 用法:
pipreqs [选项] <路径>
- 选项:
- use-local仅使用本地软件包信息,而不是查询PyPI
- pypi-server
使用自定义PyPi服务器 - proxy
使用代理,参数将传递到请求库。您也可以只设置终端中的environment参数: - $ export HTTP_PROXY =“ http://10.10.1.10:3128”
- $ export HTTPS_PROXY =“ https://10.10.1.10:1080”
- debug打印调试信息
- ignore <目录> ...忽略多余的目录
- encoding
使用encoding参数打开文件 - savepath <文件>将需求列表保存在给定文件中
- print在标准输出中输出需求列表
- force覆盖现有的requirements.txt
- clean <文件>通过删除项目中未导入的模块来清理requirements.txt。
内容总结
以上是互联网集市为您收集整理的Python项目生成所有依赖包的清单全部内容,希望文章能够帮你解决Python项目生成所有依赖包的清单所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。