1. 程式人生 > >Django - 匯出專案依賴庫到 requirements.txt

Django - 匯出專案依賴庫到 requirements.txt

兩種方法:

虛擬環境:

    使用 pip freeze

pip freeze > requirements.txt
# 這種方式推薦配合 virtualenv ,否則會把整個環境中的包都列出來。

只掃描專案目錄

    使用 pipreqs

這個工具的好處是可以通過對專案目錄的掃描,自動發現使用了那些類庫,自動生成依賴清單。缺點是可能會有些偏差,需要檢查並自己調整下。

# 首先安裝 pipreqs
#
pip install pipreqs # 安裝位置在pip所在的目錄下 # 使用方式也比較簡單
pipreqs /var/www/project 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

用法:

# pip install -r /var/www/project/requriements.txt 
# 即可安裝所有依賴

問題補充

    在使用 pipreqs /var/www/project 時可能會遇見: 

UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 776: illegal multibyte sequence

解決方法為:

    在後面指定編碼格式 pipreqs /var/www/project  --encoding=utf8

用法:pip install -r requriements.txt 即可安裝所有依賴