4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

最小限なrequirements.txtの作成方法

Last updated at Posted at 2023-08-12

内容

requirements.txtを作成する際に、そのままだと対象のコードと関係ないライブラリもたくさん含まれてしまいます。関係ないライブラリを手動で取り除くのは面倒です。ライブラリを使って必要最小限のrequirements.txtを作成する方法を紹介します。

使用するライブラリ

  • pipreqs

実行した環境

  • Windows10
  • コマンドプロンプト

手順

  1. pipreqsをインストール
    pip install pipreqs
    
  2. プロジェクトのディレクトリを指定してpipreqsを実行
    pipreqs /path/to/project/
    
  3. 生成されたrequirements.txtを確認

実行時のエラーと解消方法①

  • エラーメッセージ:UnicodeDecodeError: 'cp932' codec can't decode byte

    • 原因: pipreqsファイルのエンコーディングが正しく認識しない。
    • 解消方法: pipreqsのソースコードをUTF-8に設定する。

    修正前:

    with open(file_path, 'r', encoding=encoding) as f:
    

    修正後:

    with open(file_path, 'r', encoding='utf-8') as f:
    

実行時のエラーと解消方法②

  • エラーメッセージ: 明らかに想定しないライブラリが書かれたrequirements.txtが生成された。
    • 原因: 対象にするディレクトリ全体を探索するため関係ないコードのライブラリも拾ってしまった。
    • 解消方法: 対象の.pyファイルのみ別ディレクトリに移動させて(対象のファイルを絞って)からpipreqsを実行する。

感想

とても便利で感動しました。
今後もこのライブラリを使い続けるためにもコードを書き続けなければ・・・。

4
4
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?