python項目依賴庫生成requirements.txt文件

python項目依賴庫生成requirements.txt文件

第一種:pip freeze > requirements.txt
第二種:pipreqs 項目根目錄(不能有中文)--encoding=utf8
                
requirements已存在:    pipreqs 項目根目錄 --encoding=utf8 --force

第一種:pip freeze > requirements.txt

步驟:

  1. cd 到你的項目根目錄

  2. 執(zhí)行:pip freeze > requirements.txt

    C:\Users\dyunren>i:
    
    I:\>cd I:\python20\softwaredate\py_basics
    

缺點:`你本機python環(huán)境所有依賴都會寫到 requirements.txt文件當中。

如圖展示:

image.png

第二種:pipreqs

pipreqs的安裝:

pip install pipreqs

查看版本:

pip show pipreqs  或 pipreqs --version
image.png

使用:pipreqs python項目根目錄

C:\Users\dyunren>i:

I:\>cd I:\python20\softwaredate\py_basics

I:\python20\softwaredate\py_basics>pipreqs
Traceback (most recent call last):
  File "d:\software\python37\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "d:\software\python37\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "D:\software\python37\Scripts\pipreqs.exe\__main__.py", line 9, in <modul
e>
  File "d:\software\python37\lib\site-packages\pipreqs\pipreqs.py", line 470, in
 main
    init(args)
  File "d:\software\python37\lib\site-packages\pipreqs\pipreqs.py", line 409, in
 init
    follow_links=follow_links)
  File "d:\software\python37\lib\site-packages\pipreqs\pipreqs.py", line 122, in
 get_all_imports
    contents = f.read()
UnicodeDecodeError: 'gbk' codec can't decode byte 0xaf in position 207: illegal
multibyte sequence


  • 如上圖出現(xiàn)了編碼出錯'gbk',需要轉(zhuǎn)換成utf-8
pipreqs I:\python20\softwaredate\py_basics --encoding=utf8
ERROR: Failed on file: I:\python20\softwaredate\py_basics\列表操作\列表序列通用
操作.py
Traceback (most recent call last):
  File "d:\software\python37\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "d:\software\python37\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "D:\software\python37\Scripts\pipreqs.exe\__main__.py", line 9, in <modul
e>
  File "d:\software\python37\lib\site-packages\pipreqs\pipreqs.py", line 470, in
 main
    init(args)
  File "d:\software\python37\lib\site-packages\pipreqs\pipreqs.py", line 409, in
 init
    follow_links=follow_links)
  File "d:\software\python37\lib\site-packages\pipreqs\pipreqs.py", line 138, in
 get_all_imports
    raise exc
  File "d:\software\python37\lib\site-packages\pipreqs\pipreqs.py", line 124, in
 get_all_imports
    tree = ast.parse(contents)
  File "d:\software\python37\lib\ast.py", line 35, in parse
    return compile(source, filename, mode, PyCF_ONLY_AST)
  File "<unknown>", line 1
    # -*- coding: utf-8 -*-
    ^
SyntaxError: invalid character in identifier

報錯為標識符錯誤,是因為我文件名有帶中文了。真的是坑啊,只好換個項目試一下了。

  • pipreqs D:\softwaredate\TestAPI --encoding=utf8
image.png

如果報requirements.tx存在的警告信息:

  • 可以使用--force 參數(shù)來覆蓋
C:\Users\dyunren>pipreqs D:\softwaredate\TestAPI --encoding=utf8
WARNING: Requirements.txt already exists, use --force to overwrite it
pipreqs D:\softwaredate\TestAPI --encoding=utf8 --force
image.png

requirements.txt中的依賴如何安裝:

pip install -r requirements.txt
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容