pip 캐시 폴더는 어디에 있습니까?


93

Python pip 캐시 폴더 는 어디에 있습니까 ? 설치 중에 오류가 발생하여 이제 캐시 파일을 사용하여 패키지를 다시 설치합니다.

그 디렉토리는 어디에 있습니까? 나중에 설치할 수 있도록 백업하고 싶습니다. 가능합니까?

예를 들어 다음과 같습니다.

Using cached cssselect-0.9.1.tar.gz

나는이 디렉토리를 구글에서 검색했지만 내가 본 것은 폴더에서 설치하는 방법을 배우는 것입니다. 기본 캐시 디렉토리를 찾고 싶습니다.

또 다른 질문은 이러한 캐시 파일이 해당 디렉토리에 남아 있거나 곧 제거된다는 것입니다.


1
OS에 따라 다릅니다.
Martin Konecny

창 @MartinKonecny
아라 쉬 하타미

3
나는 그것이 ~\AppData\Local\pip\cacheWindows에 있다고 믿습니다 .
fredrik

'0f4017d43a13156e41129019e85a69fcc2dd34e6904ed88395bb5451'과 같은 이름이 명확하지 않은 파일이 많이 있습니다 ... 정확히 'cssselect-0.9.1.tar.gz'파일을 찾을 수 있습니까 ??? @fredrik
아라 쉬 하타미

2
이 경우처럼 캐시는 항상 사람이 읽을 수있는 것은 아닙니다.
fredrik

답변:


33

운영 체제에 따라 다릅니다.

함께 핍 20.1 이상, 당신은 그것을 함께 찾을 수 있습니다 :

pip cache dir

예를 들어 macOS의 경우 :

$ pip cache dir
/Users/hugo/Library/Caches/pip

문서 :


예 ... 오래된 질문입니다 (약 4 년 : D)
Arash Hatami

1
오래되었지만 여전히 관련이 있습니다! github.com/hugovk/pypistats/pull/105/commits/…
Hugo

PIP_CACHE_DIR이 디렉토리를 설정 하려면 환경 변수 도 참조하십시오 .
Alex Povel

123

캐시 디렉토리의 기본 위치는 운영 체제에 따라 다릅니다.

유닉스

~ / .cache / pip이며 XDG_CACHE_HOME 디렉토리를 따릅니다.

맥 OS

~ / 라이브러리 / 캐시 / pip

윈도우

<CSIDL_LOCAL_APPDATA> \ pip \ Cache

휠 캐시

pip는 pip 캐시 디렉토리 내의 하위 디렉토리 휠에서 읽고 거기에있는 모든 패키지를 사용합니다. [한조각]

https://pip.pypa.io/en/latest/reference/pip_install/#caching

캐시 디렉토리의 위치는 명령 줄 옵션을 통해 변경할 수 있습니다 --cache-dir.


7
<CSIDL_LOCAL_APPDATA> == % LOCALAPPDATA %
Winand

% LOCALAPPDATA % \ pip \ Cache
Alex78191

1
$XDG_CACHE_HOME비었다. find ~/.cache/pip | grep -i tensortensorflow_determinismsilence_tensorflow바퀴가 있지만 tensorflow-gpu. 그러나 pip install tensorflow-gpu말한다 Using cached https://.../tensorflow_gpu-2.0.0-cp37-cp37m-manylinux2010_x86_64.whl. 이 파일은 어디에서 찾아야합니까?
bers

(또한을 (를) tensorflow_gpu-2.0.0-cp37-cp37m-manylinux2010_x86_64.whl사용하여 중복을 다운로드 하고 확인 fdupes했지만 찾을 수 없었습니다 ...)
bers

24

Pythonic 및 크로스 플랫폼 방식 :

import pip
from distutils.version import LooseVersion

if LooseVersion(pip.__version__) < LooseVersion('10'):
    # older pip version
    from pip.utils.appdirs import user_cache_dir
else:
    # newer pip version
    from pip._internal.utils.appdirs import user_cache_dir

print(user_cache_dir('pip'))
print(user_cache_dir('wheel'))

내부적으로 경로를 정규화하고, 이국적이고 일반적인 운영 체제 및 플랫폼에 대한 여러 위치를 관리하고, Windows 레지스트리 조회를 수행합니다.

2.x와 3.x의 다른 Python 버전이 설치되어있는 경우 모두 동일한 캐시 위치를 공유한다는 점을 언급 할 가치가 있습니다.


5
ModuleNotFoundError: No module named 'pip.utils', Ubuntu의 pip 10.0.1.
Gringo Suave

1
당신이 원하는 경우 pip'자신의 캐시 디렉토리를 당신은 또한 바로 사용할 수 있습니다 from pip._internal.locations import USER_CACHE_DIR또는 python -c "from pip._internal.locations import USER_CACHE_DIR; print(USER_CACHE_DIR)"당신은 스크립트 등 물건을 잡는다면
ryanjdillon

들어가서 _internal값을 가져 오지 마십시오 . pip의 내부는 라이브러리처럼 사용되지 않으며 변경 될 수 있습니다. pip cache dirpip 20.1 이상에서이 값을 얻는 가장 좋은 방법입니다.
pradyunsg

8

캐시 폴더의 백업을 수행하지 않고 관련 휠을 백업 할 수 있습니다 .

버전 0.9.1의 csselect 용 휠을 다음 위치에 다운로드하십시오 /tmp/wheelhouse.

pip wheel --wheel-dir=/tmp/wheelhouse cssselect==0.9.1

다운로드 한 휠 설치 :

pip install /tmp/wheelhouse/cssselect-0.9.1-py2-none-any.whl

cssselect-0.9.1-py2-none-any.whl파일 이름 이 얼마나 안정적이고 예측 가능한가요?
Blaise

관리자가 패키징 할 때 setup.py에서 수행하는 작업에 따라 다릅니다.
fredrik
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.