Parte 2‐ Hello.py - PlataformasWeb-P-AA2025/actividad-10-junio-c2-b2-g5 GitHub Wiki

Descripción general

Este script es un ejemplo básico de un programa CGI (Common Gateway Interface) escrito en Python, que genera contenido HTML dinámico en función de la entrada del usuario.

¿Qué hace el script?

  • Utiliza el módulo cgi para capturar datos enviados por un formulario web.
  • Imprime los encabezados HTTP necesarios para que el navegador interprete la respuesta como HTML.
  • Obtiene el valor del parámetro name enviado por el usuario; si no se proporciona, usa "Invitado" por defecto.
  • Genera una página HTML que muestra un saludo personalizado usando el nombre recibido.
  • Incluye un formulario web para que el usuario pueda ingresar su nombre y enviarlo al mismo script.

Explicación detallada del código

#!/usr/bin/env python3
# -- coding: utf-8 --

import cgi  # Módulo para manejar formularios CGI

# Imprime la cabecera HTTP para indicar que el contenido es HTML con codificación UTF-8
print("Content-Type: text/html; charset=UTF-8")
print()  # Línea en blanco que separa encabezados del contenido

# Obtiene los datos enviados por el formulario
form = cgi.FieldStorage()

# Recupera el valor del campo 'name'; si no existe, usa 'Invitado'
name = form.getvalue('name', 'Invitado')

# Imprime el código HTML con el saludo dinámico y el formulario
print(f"""
<html>
<head><title>Ejemplo CGI</title></head>
<body>
    <h1>¡Hola, {name}!</h1>
    <p>Este es un ejemplo básico de un script CGI en Python.</p>
    <form method="GET" action="hello.py">
        <label for="name">Escribe tu nombre: </label>
        <input type="text" id="name" name="name">
        <input type="submit" value="Enviar">
    </form>
</body>
</html>
""")

![image](https://github.com/user-attachments/assets/f4e4bc29-9fc3-4994-b17f-802e7cb81866)
⚠️ **GitHub.com Fallback** ⚠️