Come si impedisce a PIP di scaricare nuovamente i pacchetti scaricati in precedenza? Sto testando l'installazione di matplotlib, un pacchetto da 11 MB che dipende da diversi pacchetti distro specifici. Ogni volta che eseguo pip install matplotlib
, viene nuovamente scaricato matplotlib. Come lo fermo?Come memorizzare nella cache i pacchetti PIP scaricati
risposta
È possibile utilizzare una variabile di ambiente specifica PIP_DOWNLOAD_CACHE e fare in modo che punti a una directory in cui verranno memorizzati i pacchetti. Se devono essere nuovamente installati, verranno presi da questa directory.
Sembra esserci anche un'opzione aggiuntiva per PIP pip --download-cache
che dovrebbe fare qualcosa di simile, ma non l'ho mai provato da solo. Per il vostro esempio, per evitare nuovamente il download matplotlib
ogni volta, si dovrebbe effettuare le seguenti operazioni:
pip install --download-cache /path/to/pip/cache matplotlib
Ritiene che la risposta alla tua domanda?
Si potrebbe
# download and extract package to build path
pip install --no-install matplotlib
# the build path could be found by
pip install --help|grep Unpack\ packages\ into -A 2
# then rm pip-delete-this-directory.txt inside the build path
# this prevent pip from removing package from the build directory after install
# you could check the content of the file
rm build/pip-delete-this-directory.txt
# from now on you could install matplotlib quickly
# this uses single build directory
# and can speed up compiling by caching intermediate objects.
pip install --no-download matplotlib
Inoltre, è possibile scaricare manualmente il pacchetto
pip install -d dir_for_packages matplotlib
quindi installarlo dal non-catrame e python setup install
tardi.
I pip install --download-cache
funziona in modo simile w/controllo in più: è in primo luogo cercare l'ultima o specificato versione del pacchetto di destinazione dal web, se la ricerca ha risultato e non viene memorizzato nella cache del pacchetto nella directory specificata da download-cache
, il il pacchetto memorizzato nella cache verrà utilizzato al posto del download. Ad esempio,
pip install --download-cache . pymongo
scaricherà pymongo pacchetto directory corrente:
http%3A%2F%2Fpypi.python.org%2Fpackages%2Fsource%2Fp%2Fpymongo%2Fpymongo-2.1.1.tar.gz
http%3A%2F%2Fpypi.python.org%2Fpackages%2Fsource%2Fp%2Fpymongo%2Fpymongo-2.1.1.tar.gz.content-type
Per le nuove versioni Pip:
recenti versioni Pip di default ora download di cache. Vedere questa documentazione:
https://pip.pypa.io/en/stable/reference/pip_install/#caching
Per le vecchie versioni Pip:
Creare un file di configurazione chiamato ~/.pip/pip.conf
, e aggiungere i seguenti contenuti:
[global]
download_cache = ~/.cache/pip
In un solo comando:
printf '[global]\ndownload_cache = ~/.cache/pip\n' >> ~/.pip/pip.conf
Freddo, facile e non è necessario ricordare di aggiungere il parametro ogni volta. Ho sprecato un sacco di Gb per il re-download di merda. Grazie. – erm3nda
Grazie, se usi pip3 per scaricare i requisiti e ricevere l'avviso di testo giallo, puoi mkdir ~/.cache/pip quindi l'avviso andrà via. –
- 1. come salvare i file scaricati nella cache android
- 2. Rubygems: dove vengono scaricati i pacchetti?
- 3. Come posso memorizzare nella cache i pacchetti NPM globali su Travis CI?
- 4. Come memorizzare l'elemento dell'elenco nella cache Redis
- 5. Come memorizzare nella cache in Notebook IPython?
- 6. Come memorizzare nella cache le letture?
- 7. Come memorizzare nella cache in Blackberry BrowserField
- 8. Magento come memorizzare nella cache un prodottoCollection
- 9. Come memorizzare nella cache i tag con act_as_taggable_on?
- 10. Come memorizzare nella cache i risultati in scala?
- 11. Come memorizzare i dati nella cache in symfony2
- 12. Come impedire a MMAP di memorizzare i valori nella cache?
- 13. come memorizzare nella cache asyncio coroutine
- 14. Per memorizzare nella cache o di non memorizzare nella cache - GetCustomAttributes
- 15. PHP APC Per memorizzare o non memorizzare nella cache?
- 16. Dove pip installa i suoi pacchetti?
- 17. È possibile memorizzare nella cache i metodi POST in HTTP?
- 18. laravel Cercando di memorizzare i file cache nella cartella principale
- 19. Perché memorizzare oggetti jQuery nella cache?
- 20. Grails \ Hibernate: per memorizzare o non memorizzare nella cache?
- 21. Come memorizzare nella cache i file oltre 1 MB con rack/cache su Heroku?
- 22. pip non riesce a installare i pacchetti da requirements.txt
- 23. Devo memorizzare nella cache System.getProperty ("line.separator")?
- 24. È possibile precaricare e memorizzare nella cache i file video senza aggiungerli al DOM?
- 25. come memorizzare nella cache css, images e js?
- 26. Yii2: come memorizzare nella cache il fornitore di dati attivo?
- 27. Android Glide: come scaricare e memorizzare nella cache bitmap?
- 28. Come memorizzare nella cache il risultato della query in django?
- 29. Come posso installare i pacchetti nella mia cartella $ HOME con pip?
- 30. come memorizzare nella cache immagine generata da PHP
Non sono sicuro che PIP lo faccia, ma con ' easy_install' se hai il pacchetto come file '.tar' (o presumibilmente zip?) nella directory locale cercherà di usarlo per primo. –
Guarda pure [pip-accel] (https://pypi.python.org/pypi/pip-accel). È una nuova e migliore soluzione a questo problema. – qris
come da pip 8 '--download-cache' è stato eliminato, pip dovrebbe utilizzare la cache per impostazione predefinita che può essere disattivata con' --no-cache-dir' – Ski