Python導出當前環境依賴包及項目依賴包


Python導出當前環境依賴包信息:

pip freeze > ./requirements.txt  

則會在當前命令行目錄下生成一個requirements.txt文件,內容為當前環境所有依賴包及對應版本。
同時也可以修改 ./requirements.txt 為其他指定路徑, 這樣依賴包信息會生成到指定的目錄下。

Python導出項目依賴包信息:

首選, 使用pip運行如下命令,安裝pipreqs包

pip install pipreqs

然后, 命令行進入欲生成依賴包信息的項目根目錄下,運行如下命令:

pipreqs ./

若成功,則會在項目根目錄下生成一個requirements.txt 文件。有時也會遇到一些錯誤,具體如下:

Traceback (most recent call last):
  File "d:\python\3.8.0 64-bit\lib\runpy.py", line 192, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "d:\python\3.8.0 64-bit\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "D:\Python\3.8.0 64-bit\Scripts\pipreqs.exe\__main__.py", line 7, in <module>
  File "d:\python\3.8.0 64-bit\lib\site-packages\pipreqs\pipreqs.py", line 470, in main
    init(args)
  File "d:\python\3.8.0 64-bit\lib\site-packages\pipreqs\pipreqs.py", line 406, in init
    candidates = get_all_imports(input_path,
  File "d:\python\3.8.0 64-bit\lib\site-packages\pipreqs\pipreqs.py", line 122, in get_all_imports
    contents = f.read()
UnicodeDecodeError: 'gbk' codec can't decode byte 0xa4 in position 135: illegal multibyte sequence

大致上這是一個編碼解碼時發生的錯誤,我們需要在生成依賴包信息時指定編碼方式。具體方式如以下命令:

pipreqs ./ --encoding=utf8

一般Python代碼的編碼方式都是utf8,通常使用該方式即可解決解碼問題。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM