설치 과정을 거치지 않고 pip install
이 설치하는 모든 패키지를 빠르게보고 싶습니다.핏 관계/요구 사항을 나열하는 방법이 있습니까?
답변
직접 핍으로 얻을 수있는 가장 가까운이 --no-install
인수 사용하는 것입니다 :
Downloading/unpacking celery
Downloading celery-2.5.5.tar.gz (945Kb): 945Kb downloaded
Running setup.py egg_info for package celery
no previously-included directories found matching 'tests/*.pyc'
no previously-included directories found matching 'docs/*.pyc'
no previously-included directories found matching 'contrib/*.pyc'
no previously-included directories found matching 'celery/*.pyc'
no previously-included directories found matching 'examples/*.pyc'
no previously-included directories found matching 'bin/*.pyc'
no previously-included directories found matching 'docs/.build'
no previously-included directories found matching 'docs/graffles'
no previously-included directories found matching '.tox/*'
Downloading/unpacking anyjson>=0.3.1 (from celery)
Downloading anyjson-0.3.3.tar.gz
Running setup.py egg_info for package anyjson
Downloading/unpacking kombu>=2.1.8,<2.2.0 (from celery)
Downloading kombu-2.1.8.tar.gz (273Kb): 273Kb downloaded
Running setup.py egg_info for package kombu
Downloading/unpacking python-dateutil>=1.5,<2.0 (from celery)
Downloading python-dateutil-1.5.tar.gz (233Kb): 233Kb downloaded
Running setup.py egg_info for package python-dateutil
Downloading/unpacking amqplib>=1.0 (from kombu>=2.1.8,<2.2.0->celery)
Downloading amqplib-1.0.2.tgz (58Kb): 58Kb downloaded
Running setup.py egg_info for package amqplib
Successfully downloaded celery anyjson kombu python-dateutil amqplib
인정 하듯이, 이것은 몇 가지를 떠나지 않습니다 예를 들어
pip install --no-install <package>
을,이 출력은 설치 셀러리입니다 임시 파일의 형태로 주위에 뭉툭하게하지만, 목표를 달성하지 않습니다. virtualenv (이렇게해야 함)로이 작업을 수행하는 경우 <virtualenv root>/build
디렉토리를 제거하는 것만큼 쉽게 정리할 수 있습니다.
그 이유는 메타 데이터가 setup.py 외부에 존재하지 않기 때문입니다. 왜냐하면'pip'와'pypi'가 메타 데이터 인덱스를 만들고'pip'와'pypi'가 아닌'rpm'이나'dpkg'와는 달리 그런 식으로 일해라. 따라서 각 요구 사항을 전달해야합니다. –
고마워요 @paul, 당신의 의견은 답을 완전하게합니다 – lastoneisbearfood
나는'pip --no-install celery'을 시도했지만'no such option : --no-install' (pip 1.2.1) –
패키지가 설치되어있는 경우에만 pip show <package>
을 사용할 수 있습니다. 출력 끝 부분에 Requires:
파일이 있는지 확인하십시오. 분명히 이것은 요구 사항을 깨뜨리지 만 그럼에도 불구하고 유용 할 수 있습니다. 예를 들어
:
$ pip --version
pip 7.1.0 [...]
$ pip show pytest
---
Metadata-Version: 2.0
Name: pytest
Version: 2.7.2
Summary: pytest: simple powerful testing with Python
Home-page: http://pytest.org
Author: Holger Krekel, Benjamin Peterson, Ronny Pfannschmidt, Floris Bruynooghe and others
Author-email: holger at merlinux.eu
License: MIT license
Location: /home/usr/.tox/develop/lib/python2.7/site-packages
Requires: py
@radtek 의해 코멘트에 언급 7.0.0 (2015년 5월 21일) - 노 설치 removed는 그대로 이후의 명령 pip install <package> --download <path>
은, 표기 pip
에서. 그러면 필요한 종속성이 <path>
으로 다운로드됩니다.
어쨌든, **'--download'도 사용되지 않습니다. ** 표준 명령 _now_이있는 것으로 보입니다. 'The Card Cheat '의 핏 다운로드
허용되는 답변은 더 이상 현재 버전의 pip와 관련이 없으며 여러 의견을 읽지 않고 즉각적인 답변을 제공하지 않으므로 업데이트 된 답변을 제공하고 있습니다.
이것은 파이프 버전 8.1.2 및 9.0.1으로 테스트되었습니다.
는pip download [package] -d /tmp --no-binary :all:
-d
더 나은, 그냥 인수가되는으로이 스크립트를 사용 종속성을 출력으로 가져 오는 패키지 이름 :
#!/bin/sh
PACKAGE=$1
pip download $PACKAGE -d /tmp --no-binary :all: \
| grep Collecting \
| cut -d' ' -f2 \
| grep -v $PACKAGE
here도 사용할 수 있습니다.
** 이것은 굉장하고 받아 들여진 대답이어야합니다. ** 솔직히 말해서, 디폴트'pip' 인터페이스는 끔찍하며 각 커밋을 통과 할 때마다 성능이 저하됩니다. 패키지 크래프트를 다운로드하지 않고 패키지 종속성을 나열하는 기능은 핵심 기능이어야합니다. 그렇지 않기 때문에 결론적으로 Bourne 쉘 스크립트가 차선책입니다. ' shakes_head>' –
또 다른 옵션은 requirements.txt
파일을 구문 분석 할 수있는 pip.req.parse_requirements
API 및 setup.py
파일을 구문 분석하는 distutils.core.setup
교체를 사용 this one 유사한 도우미 스크립트를 사용하는 것입니다.
이미 패키지가 설치되어있는 경우이 스크립트는 @Sardathrion에서 언급 한 pip show
명령을 실행하여 요구 사항 파일에서 모든 종속성을 가져올 수 있습니다.
import commands
fil = open("requirements.txt")
for package_line in fil.readlines():
if "==" in package_line:
package = package_line.split("==")[0]
elif "[" in package_line:
package = package_line.split("[")[0]
else:
package = package_line
output = commands.getoutput('pip show %s' % package)
try:
required = output.split("\n")[-1].split(":")[1]
except Exception as e:
required = ""
print "error {} in package {}".format(e, package)
if len(required) > 1:
print package, "-- ****%s***" % required
- 1. PostgreSQL 서버를 나열하는 방법이 있습니까?
- 2. IIS의 출력 캐시 항목을 나열하는 방법이 있습니까?
- 3. DB 테이블의 내용을 나열하는 XOOPS 방법이 있습니까?
- 4. ftp에서 로컬 디렉토리의 내용을 나열하는 방법이 있습니까?
- 5. Android에 설치된 로켈을 나열하는 방법이 있습니까?
- 6. 모든 belongs_to 연관을 나열하는 방법이 있습니까?
- 7. pika를 통해 rabbitmq의 대기열을 나열하는 방법이 있습니까?
- 8. 인덱싱 카탈로그의 속성을 나열하는 방법이 있습니까?
- 9. NetBeans 편집기 힌트를 나열하는 방법이 있습니까?
- 10. Xcode에서 모든 파일과 대상을 나열하는 방법이 있습니까?
- 11. 핏 드로이드 알고리즘
- 12. RenderBody() 요구 사항을 해결할 방법이 있습니까?
- 13. github에서 폴더의 변경 사항을 추적하는 방법이 있습니까?
- 14. 엔티티의 변경 사항을 추적하는 방법이 있습니까?
- 15. Amazon SimpleDB - 도메인의 모든 속성을 나열하는 방법이 있습니까?
- 16. 정확한 파이썬 버전으로 핏 설치하기
- 17. PERFORCE의 나의 선반환 된 변경 사항을 나열하는 방법은 무엇입니까?
- 18. 폴더에서 모든 파일을 재귀 적으로 나열하는 방법이 있습니까?
- 19. git 저장소의 현재 파일을 모두 나열하는 방법이 있습니까?
- 20. Kohana hMVC : 모든 모델 인스턴스를 나열하는 방법이 있습니까?
- 21. 모든 C 전 처리기 정의를 나열하는 방법이 있습니까?
- 22. Windows에서 Qt를 사용하여 현재 프로세스를 나열하는 방법이 있습니까?
- 23. 잘못된 트리거를 나열하는 테이블이 있습니까?
- 24. 병합되지 않은 SVN의 변경 사항을 찾는 방법이 있습니까?
- 25. 테마 변경 사항을 즉시 적용 할 수있는 방법이 있습니까?
- 26. 힘내 : 파일의 특정 섹션에 대한 변경 사항을 조회하는 방법이 있습니까?
- 27. NHibernate 세션을 사용하여 db에 변경 사항을 기록해야하는지 파악하는 방법이 있습니까?
- 28. 코드를 통해 레지스트리에서 변경 한 사항을 IE에 알리는 방법이 있습니까?
- 29. 내 TFS 보류중인 변경 사항을 모두 지울 수있는 방법이 있습니까?
- 30. HTML DOM 요소 속성 변경 사항을 알리는 효과적인 방법이 있습니까?
관련 : http://stackoverflow.com/q/9232568/183791 – dusan
어쩌면 [노른자 (https://github.com/cakebread/yolk) 도와 드릴까요? – jadkik94
노른자는 멋진 도구처럼 보입니다. 알려 줘서 고마워. – lastoneisbearfood