반응형
질문
나는 스크립트 내에서 PyPI에서 패키지를 직접 설치해야 합니다.
어떤 모듈이나 distutils
(distribute
, pip
, 등) 기능을 통해 pypi.install('requests')
와 같은 명령을 실행하여 requests를 가상 환경에 설치할 수 있는 방법이 있을까요?
답변
스크립트에서 패키지를 설치하는 공식 권장 방법은 서브프로세스를 통해 pip의 명령 줄 인터페이스를 호출하는 것입니다. 여기에 제시된 대부분의 다른 답변은 pip에서 지원되지 않습니다. 또한 pip v10부터 모든 코드는 정확히 사용자에게 pip의 프로그래밍적 사용이 허용되지 않음을 명확히하기 위해 pip._internal
으로 이동되었습니다.
sys.executable
을 사용하여 현재 런타임과 관련된 동일한 pip
를 호출하는 것을 보장하세요.
import subprocess
import sys
def install(package):
subprocess.check_call([sys.executable, "-m", "pip", "install", package])
반응형
댓글