Fuente: Gemini
Aquí tienes un resumen del documento "Pythonlearn-12-HTTP.pptx":
- Protocolo de Control de Transmisión (TCP):
- Construido sobre IP (Protocolo de Internet).
- Asegura la retransmisión de datos si se pierden y maneja el "control de flujo".
- Proporciona un "canal" confiable para la comunicación.
- Conexiones TCP / Sockets:
- Un socket de Internet es un punto final de una comunicación bidireccional entre procesos a través de una red basada en el Protocolo de Internet.
- Números de Puerto TCP:
- Un puerto es un punto final de comunicación de software específico de una aplicación o proceso.
- Permite que múltiples aplicaciones en red coexistan en el mismo servidor.
- Existen números de puerto TCP bien conocidos, como el puerto 80 para servidores web.
- Sockets en Python:
- Python tiene soporte incorporado para sockets TCP a través del módulo
socket
. - Se muestra un ejemplo de cómo crear un socket, conectarse a un host y puerto, y enviar/recibir datos.
- Python tiene soporte incorporado para sockets TCP a través del módulo
- Protocolos de Aplicación:
- Son las reglas que definen qué hacer con el socket una vez establecida una conexión confiable.
- Ejemplos incluyen protocolos para correo y la World Wide Web.
- HTTP - Protocolo de Transferencia de Hipertexto:
- Es el protocolo de capa de aplicación dominante en Internet.
- Se inventó para la Web para recuperar HTML, imágenes y documentos.
- El concepto básico es: establecer una conexión, solicitar un documento, recuperar el documento y cerrar la conexión.
- Un protocolo es un conjunto de reglas que todas las partes siguen para predecir el comportamiento de los demás.
- Obtención de datos del servidor:
- Cuando un usuario hace clic en un enlace, el navegador se conecta al servidor web y emite una solicitud "GET" para obtener el contenido de la página.
- El servidor devuelve el documento HTML al navegador.
- Estándares de Internet:
- Los estándares para todos los protocolos de Internet son desarrollados por la Internet Engineering Task Force (IETF).
- Los estándares se llaman "RFCs" (Request for Comments).
- Realización de una solicitud HTTP en Python:
- Se muestra un ejemplo de código para realizar una solicitud HTTP utilizando sockets en Python, enviando una solicitud GET y recibiendo la respuesta.
- La respuesta HTTP consta de un encabezado (HTTP Header) y un cuerpo (HTTP Body).
- Caracteres y Cadenas:
- Se explica la codificación ASCII, donde cada carácter se representa con un número entre 0 y 256, almacenado en 8 bits (un byte).
- Se introduce el concepto de caracteres multibyte y UTF-8 como la práctica recomendada para codificar datos que se intercambian entre sistemas.
- En Python 3, todas las cadenas son Unicode internamente.
- Al comunicarse con recursos de red, es necesario codificar las cadenas de Python 3 en una codificación de caracteres (generalmente UTF-8) y decodificar los datos recibidos.
- Facilitando HTTP con urllib:
- La biblioteca
urllib
simplifica el trabajo con HTTP, haciendo que las páginas web parezcan archivos. - Se muestra cómo usar
urllib.request.urlopen()
para abrir una URL y leer su contenido línea por línea.
- La biblioteca
- Análisis de HTML (Web Scraping):
- El "Web Scraping" es cuando un programa simula ser un navegador para recuperar páginas web, extraer información y navegar por más páginas.
- Se menciona la biblioteca BeautifulSoup como una forma fácil de analizar HTML.
- Se proporciona un ejemplo de código que utiliza BeautifulSoup para extraer enlaces de una página web.
urllib
y BeautifulSoup
.
No hay comentarios.:
Publicar un comentario