Estoy creando una ventana acoplable que contiene python y php. Estoy escribiendo un script de python para conectarme a un corredor MQTT que reside en otra ventana acoplable.
En mi dockerfile me aseguro de instalar el cliente paho usando los siguientes comandos:
RUN apt-get install -y python3-dev RUN apt-get install -y libffi-dev RUN apt-get install -y libssl-dev ADD https://bootstrap.pypa.io/get-pip.py /tmp/get-pip.py RUN cat /tmp/get-pip.py | python3 RUN pip install paho-mqtt RUN pip install python-etcdSin embargo, cuando ejecuto el script de python, aparece el siguiente error:
ImportError: No module named paho.mqtt.clientLa instalación de la ventana acoplable no muestra ningún error con respecto a la instalación de paho-mqtt. Sería genial si alguien puede orientar sobre esto.
Creo que he encontrado el problema,
Ha instalado Python3 pero, por alguna razón, el intérprete tiene por defecto la versión 2.7 en Linux.
Intente usar pip3 install paho-mqtt python-etcd en su lugar.
O si no funciona, puede copiar y pegar literalmente la carpeta paho de la carpeta de site-packages Python2.7 a la carpeta de paquetes site-packages Python3 . Acabo de verificar paho-mqtt 1.2 para Python2 es exactamente igual que paho-mqtt 1.2 para Python3 usando una herramienta Meld diff. Tenga en cuenta que cuando copie y pegue directamente la pip list no se mostrará el paquete que copió.
site-packages generalmente se encuentran dentro de la carpeta lib de su sistema. Depende de cómo esté instalado Python . En mi caso todo está dentro de la carpeta $HOME/.pyenv .
Recuerde que Python2 tiene su propia carpeta site-packages y Python3 tiene su propia carpeta site-packages donde Python busca los paquetes. A veces, si está utilizando una distribución de Linux basada en Debian , asegúrese de verificar también dentro de la carpeta dist-packages para ver si puede encontrar el paquete que está buscando.
Puedes intentar instalar Paho lib:
git clone https://github.com/eclipse/paho.mqtt.pythonUna vez que tenga el código, también puede instalarlo desde su repositorio:
cd paho.mqtt.python python setup.py install