如何根据需要从 Python 脚本自动安装所需的包?

新手上路,请多包涵

Python 或 Linux 中是否有任何东西基本上指示系统“安装任何必要的东西”。基本上,我发现为我工作的每个新脚本/系统/服务器安装 python 包很烦人。每次我最终都会做一个 sudo pip 或一个 apt-getdnf 无论如何。为什么不在脚本本身内自动化呢。无论何时出现“未找到包”错误,将库名称传递给安装语句。有这个吗?

PS:我知道 docker 存在,但是纯粹出于执行目的而在 Python/脚本级别或直接系统级别进行讨论。

原文由 Deepak 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 838
1 个回答

如何根据需要从 python 脚本自动安装所需的包?

假设您的 Python 脚本是 example.py

 import os
import time
import sys
import fnmatch
import requests
import urllib.request
from bs4 import BeautifulSoup
from multiprocessing.dummy import Pool as ThreadPool
print('test')

您可以使用 pipreqs 根据 Python 脚本包含的 import 语句自动生成 requirements.txt 文件。要使用 pipreqs ,假设您在 example.py 所在的目录中:

 pip install pipreqs
pipreqs .

它将生成以下 requirements.txt 文件:

 requests==2.23.0
beautifulsoup4==4.9.1

您可以安装:

 pip install -r requirements.txt

原文由 Franck Dernoncourt 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题