¿Cómo descargar ruedas multiplataforma vía pip?

Estoy acostumbrado a pre-descargar paquetes usando Pip, luego los copio a una máquina de destino para su implementación. Con los Python Wheels recientemente presentados, me veo obligado a “pip … –no-use-wheel”, ya que algunos de los paquetes descargados son específicos de la plataforma (estoy desarrollando en OSX y desplegándolos en Debian) y no lo harán. instalar en la máquina de destino. ¿Hay alguna forma de descargar Wheels para plataformas de destino (o plataforma independiente)?

El comando de pip download ahora tiene el argumento --platform , que puede usar para especificar la plataforma deseada:

 pip download --platform=manylinux1_x86_64 --only-binary=:all: lxml 

La forma más fácil de lograrlo es usar IMO para usar un script personalizado.

Puede acceder a todo el índice PyPI a través de la interfaz simple , si el paquete de interés ofrece una o más ruedas, aparecerán en la misma dirección + / .

Por ejemplo: si tuviera que instalar setuptools todas las ruedas aparecerían en: https://pypi.python.org/simple/setuptools/

En su script, recuerde implementar la prioridad de etiqueta recomendada según lo especificado por PEP-425 . Esencialmente, eso se reduce a descargar la versión más específica (en oposición a la más general) del paquete, ya que esto normalmente se traduce en ventajas de rendimiento, con, por ejemplo, extensiones C que reemplazan las implementaciones de python puras de algún algoritmo.