DEV Community

Generate requirements.txt file using pipreqs

In this article, I will explain how to Generate a requirements.txt file for any project based on imports libraries using pipreqs

First, install pipreqs : pip install pipreqs

after that you can use any of these commands :

    pipreqs [options] [<path>]

    <path>                The path to the directory containing the application files for which a requirements file
                          should be generated (defaults to the current working directory)

    --use-local           Use ONLY local package info instead of querying PyPI
    --pypi-server <url>   Use custom PyPi server
    --proxy <url>         Use Proxy, parameter will be passed to requests library. You can also just set the
                          environments parameter in your terminal:
                          $ export HTTP_PROXY=""
                          $ export HTTPS_PROXY=""
    --debug               Print debug information
    --ignore <dirs>...    Ignore extra directories, each separated by a comma
    --no-follow-links     Do not follow symbolic links in the project
    --encoding <charset>  Use encoding parameter for file open
    --savepath <file>     Save the list of requirements in the given file
    --print               Output the list of requirements in the standard output
    --force               Overwrite existing requirements.txt
    --diff <file>         Compare modules in requirements.txt to project imports
    --clean <file>        Clean up requirements.txt by removing modules that are not imported in project
    --mode <scheme>       Enables dynamic versioning with <compat>, <gt> or <non-pin> schemes
                          <compat> | e.g. Flask~=1.1.2
                          <gt>     | e.g. Flask>=1.1.2
                          <no-pin> | e.g. Flask
Enter fullscreen mode Exit fullscreen mode

$ pipreqs /home/project/location
Successfully saved requirements file in /home/project/location/requirements.txt

after that, you will find the requirement.txt was added to the folder path

Note: I copied this post from my classmate @kareemnegm who passed away this year. So please, pray to him. God’s mercy for you, Kareem❤💚🤍💔💔


Top comments (0)