Extrator de requirements.txt: transforme um notebook Jupyter em dependências pip em segundos
Este extrator de requirements.txt lê um arquivo .ipynb, varre cada célula de código em busca de imports e linhas de instalação via shell magic, e gera um requirements.txt limpo para `pip install -r`. Solte o notebook no navegador e o arquivo aparece abaixo; nada sai da sua máquina. Ele cobre o caso real que todo mundo enfrenta: alguém compartilhou um notebook, você quer rodá-lo localmente e não tem tempo de ler todos os imports na mão.
Parsers Python puros costumam perder casos. O extrator trata `import x`, `import a, b`, `import a as b`, `from x.y import z`, e magics de shell como `!pip install pandas`, `%pip install requests==2.31`, `!conda install -y numpy`. Módulos da biblioteca padrão são filtrados para você não fixar `os` ou `json` por engano. Aliases conhecidos — `cv2 → opencv-python`, `sklearn → scikit-learn`, `PIL → Pillow`, `bs4 → beautifulsoup4`, `yaml → PyYAML`, `dotenv → python-dotenv` — mapeiam para os nomes reais no PyPI para que `pip install -r` funcione de primeira.
Comparado a rodar pipreqs localmente, esta página é mais rápida quando você só tem um notebook para inspecionar, o projeto ainda não está no disco, ou quer compartilhar um requirements.txt inicial com um colega antes de criar um ambiente virtual. Também serve como conferência após o pipreqs: solte o mesmo notebook aqui, revise a lista e ajuste pins antes do push.
Os padrões só fixam versões onde o próprio notebook fixou (via `!pip install pandas==2.2.1`). Desligue Mapear nomes de import se preferir nomes brutos de módulo. Desligue Ordenar para manter a ordem em que os imports aparecem. Desligue Cabeçalho para pular o bloco de comentário no topo quando precisar de um arquivo estritamente legível por máquina.

