pip-audit

2.10.0 · active · verified Thu Apr 09

pip-audit is a command-line tool for scanning Python environments (installed packages, requirements files, or lockfiles) for known vulnerabilities. It leverages various vulnerability databases like OSV and Ecosyste.ms to provide comprehensive security checks. Currently at version 2.10.0, it maintains an active development pace with frequent minor releases to introduce new features, fix bugs, and update dependencies.

Warnings

Install

Imports

Quickstart

This quickstart demonstrates how to use `pip-audit` via its command-line interface, which is its primary mode of operation. It shows scanning the current Python environment and a requirements file, outputting results in JSON format for machine readability. The `subprocess` module is used to simulate a command-line invocation.

import subprocess

# Scan the current Python environment
print('Scanning current environment:')
result_env = subprocess.run(['pip-audit', '--output-format', 'json'], capture_output=True, text=True, check=False)
print(result_env.stdout)

# Example: Scan a requirements file (create a dummy one)
with open('requirements.txt', 'w') as f:
    f.write('requests==2.25.1\n') # Known vulnerable version

print('\nScanning requirements.txt:')
result_req = subprocess.run(['pip-audit', '-r', 'requirements.txt', '--output-format', 'json'], capture_output=True, text=True, check=False)
print(result_req.stdout)

view raw JSON →