Última actualización: 13 de diciembre de 2023

5.2. PyNgrok

Nota

Propósito: es una libraría permite usar un proxy inverso que abre conexiones seguras desde URL públicas a computador local, hacer demostraciones desde su propia máquina y más.

PyNgrok es una librería externa de Python que permite usar Ngrok desde un código Python.

Ngrok es una herramienta que crea túneles seguros desde URLs públicas a localhost, ideal para exponer servidores web locales, construir integraciones con webhooks, habilitar acceso SSH, probar chatbots, hacer demostraciones desde tu propia máquina y más.

5.2.1. Instalación

Para instalar el paquete PyNgrok ejecute el siguiente comando, el cual a continuación se presentan el correspondiente comando de tu sistema operativo:

$ pip install pyngrok

Puede probar si la instalación se realizo correctamente, ejecutando el siguiente comando correspondiente a tu sistema operativo:

$ python -c "import pyngrok ; print(pyngrok.__package__)"

Si muestra el nombre del paquete como pyngrok, tiene correctamente instalada la paquete. Con esto, ya tiene todo listo para continuar.


5.2.2. Práctica - Hello

En particular, usaremos PyNgrok para exponer una simple aplicación streamlit.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
# Importar las librerías necesarias
from flask import Flask
from pyngrok import ngrok

# Crear una aplicación Flask
app = Flask(__name__)

# Definir una ruta para el servidor web
@app.route("/")
def hola():
    return "Hola, mundo!"

# Iniciar el servidor web en el puerto 5000
app.run(port=5000)

# Abrir un túnel HTTP con PyNgrok en el mismo puerto
http_tunnel = ngrok.connect(5000)

# Imprimir la URL pública del túnel
print(http_tunnel.public_url)

Este código crea un servidor web local que responde con Hola, mundo! cuando se accede a la ruta /. Luego, usa PyNgrok para abrir un túnel HTTP en el puerto 5000, que es el mismo que usa el servidor web. Finalmente, imprime la URL pública del túnel, que se puede usar para acceder al servidor web desde cualquier navegador.

Espero que este ejemplo te haya ayudado a entender el funcionamiento de PyNgrok. Si quieres saber más sobre esta librería, puedes consultar su documentación oficial en 3.

Por hacer

TODO Terminar de escribir esta sección.


Ver también

Consulte la sección de lecturas suplementarias del entrenamiento para ampliar su conocimiento en esta temática.


¿Cómo puedo ayudar?

¡Mi soporte está aquí para ayudar!

Mi horario de oficina es de lunes a sábado, de 9 AM a 5 PM. GMT-4 - Caracas, Venezuela.

La hora aquí es actualmente 7:35 PM GMT-4.

Mi objetivo es responder a todos los mensajes dentro de un día hábil.

Contrata mi increíble soporte profesional