+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

2020-04(11)

2020-05(28)

2020-06(32)

2020-07(32)

2020-08(51)

python 项目自动生成requirements.txt文件

发布于2021-02-24 07:49     阅读(307)     评论(0)     点赞(29)     收藏(3)


0

1

2

3

4

5

6

7

1.为什么要使用requirements.txt?

主要使用目的:任何应用程序通常需要设置安装所需并依赖一组类库来满足工作要求。要求文件是指定和一次性安装包的依赖项具体一整套方法。

requirements.txt文件格式:

  1. requests==1.2.0 
  2. Flask==0.10.1requests==1.2.0 
  3. Flask==0.10.1

这样我们就可以安装requirements.txt依赖

pip install -r requirements.txt

2.生成方法

方法一:整个环境下的安装包都保存到requirements.txt中

pip freeze > requirements.txt

作用范围:pip的freeze命令保存了保存当前Python环境下所有类库包,包括那些你没有在当前项目中使用的类库。 (如果你没有的virtualenv)

生成的requirements.txt:速度非常快,不到1s

  1. absl-py==0.11.0
  2. aiohttp==3.7.3
  3. async-timeout==3.0.1
  4. attrs==20.3.0
  5. boto3==1.16.41
  6. botocore==1.19.41
  7. cachetools==4.2.0
  8. certifi==2020.12.5
  9. chardet==3.0.4
  10. click==7.1.2
  11. dataclasses==0.8
  12. docopt==0.6.2
  13. filelock==3.0.12
  14. Flask==1.1.2
  15. fsspec==0.8.5
  16. future==0.18.2
  17. google-auth==1.24.0
  18. google-auth-oauthlib==0.4.2
  19. goto-statement==1.2
  20. grpcio==1.34.0
  21. idna==2.10
  22. idna-ssl==1.1.0
  23. importlib-metadata==3.3.0
  24. itsdangerous==1.1.0
  25. Jinja2==2.11.2
  26. jmespath==0.10.0
  27. joblib==1.0.0
  28. Markdown==3.3.3
  29. MarkupSafe==1.1.1
  30. mkl-fft==1.2.0
  31. mkl-random==1.1.1
  32. mkl-service==2.3.0
  33. multidict==5.1.0
  34. nltk==3.5
  35. numpy==1.19.4
  36. oauthlib==3.1.0
  37. olefile==0.46
  38. packaging==20.8
  39. pandas==1.1.5
  40. Pillow @ file:///opt/concourse/worker/volumes/live/06069510-e277-4aed-54f4-6dfdcb84a461/volume/pillow_1603822272490/work
  41. pipreqs==0.4.10
  42. prefetch-generator==1.0.1
  43. prettytable==2.0.0
  44. protobuf==3.14.0
  45. pyasn1==0.4.8
  46. pyasn1-modules==0.2.8
  47. pyparsing==2.4.7
  48. python-dateutil==2.8.1
  49. pytorch-lightning==1.1.5
  50. pytorch-pretrained-bert==0.6.2
  51. pytz==2020.5
  52. PyYAML==5.4.1
  53. regex==2020.11.13
  54. requests==2.25.1
  55. requests-oauthlib==1.3.0
  56. rsa==4.6
  57. s3transfer==0.3.3
  58. sacremoses==0.0.43
  59. scikit-learn==0.23.2
  60. scipy==1.5.4
  61. sentencepiece==0.1.94
  62. six==1.12.0
  63. sklearn==0.0
  64. tb-nightly==2.5.0a20201222
  65. tensorboard==2.4.1
  66. tensorboard-plugin-wit==1.7.0
  67. threadpoolctl==2.1.0
  68. tokenizers==0.9.2
  69. torch==1.7.1
  70. torchaudio==0.7.0a0+a853dff
  71. torchkeras==2.1.2
  72. torchvision==0.8.2
  73. tqdm==4.54.1
  74. transformers==3.4.0
  75. typing-extensions @ file:///tmp/build/80754af9/typing_extensions_1598376058250/work
  76. urllib3==1.26.2
  77. wcwidth==0.2.5
  78. Werkzeug==1.0.1
  79. xlrd==1.2.0
  80. XlsxWriter==1.3.7
  81. xlwt==1.3.0
  82. yarg==0.1.9
  83. yarl==1.6.3
  84. zipp==3.4.0

方法二:只生成单个项目中的使用到的安装包

  1. pip install pipreqs
  2. pipreqs .

作用范围:当前项目使用的类库导出生成为requirements.txt。

使用方法:pipreqs 加上当前路径即可。在导出当前项目使用的类库时,先定位到项目根目录,然后调用 pipreqs ./ --encoding=utf8 命令,该命令避免编码错误,并自动在根目录生成 requirements.txt 文件。

生成的requirements.txt:有点慢,耗时1m多

  1. xlwt==1.3.0
  2. tqdm==4.54.1
  3. prefetch_generator==1.0.1
  4. nltk==3.5
  5. transformers==3.4.0
  6. xlrd==1.2.0
  7. torch==1.7.1
  8. XlsxWriter==1.3.7
  9. numpy==1.19.4
  10. requests==2.25.1
  11. scikit_learn==0.24.1

参考:
1.https://blog.csdn.net/Irving_zhang/article/details/79087569
2.https://blog.csdn.net/orangleliu/article/details/60958525

 

 

原文链接:https://blog.csdn.net/pearl8899/article/details/113877334

0

1

2

3

4

5



所属网站分类: 技术文章 > 博客

作者:83whjh

链接: https://www.pythonheidong.com/blog/article/851703/5d03b3ef4aa63c727719/

来源: python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

29 0
收藏该文
已收藏

评论内容:(最多支持255个字符)