Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> python

Accediendo a Datos Web con urllib de Python: Guía Práctica

Accediendo a Datos Web con urllib de Python

¿Qué es urllib?

urllib es un módulo integrado de Python que simplifica apertura de URLs y manejo de recursos web. Ofrece funciones y clases para fetch, parse y procesamiento de URLs, permitiendo a desarrolladores recuperar XML, HTML, JSON y otros formatos de datos directamente desde internet.

En este tutorial demostraremos cómo usar urllib para:

Abriendo una URL con urllib

Antes de ejecutar cualquier petición de red, importa el módulo urllib apropiado:

import urllib.request # Python 3
# import urllib2 # Python 2 (deprecated en releases recientes)

Define tu rutina main, especifica la URL objetivo y abre conexión con urlopen(). Usaremos el canal de YouTube de Guru99 como ejemplo:

def main():
    url = urllib.request.urlopen("https://www.youtube.com/user/guru99com")
    print("código resultado: " + str(url.getcode()))
    data = url.read()
    print(data.decode('utf-8'))

if __name__ == "__main__":
    main()

El método getcode() devuelve el código de estado HTTP (ej. 200 para éxito). El método read() recupera los bytes crudos de la página, que decodificamos a UTF-8 para legibilidad.

Leyendo el Contenido HTML

Una vez abierta la URL, puedes extraer el HTML simplemente llamando read(). Los bytes resultantes representan el documento HTML completo, que puedes parsear con librerías como BeautifulSoup o mostrar directamente.

Abajo, ejemplo visual de la salida HTML decodificada en consola:

Accediendo a Datos Web con urllib de Python: Guía Práctica

Muestras de Código Completo

Para referencia, las siguientes secciones proveen scripts completos para entornos Python 2 y Python 3.

Ejemplo Python 2

import urllib2
def main():
    web_url = urllib2.urlopen("https://www.youtube.com/user/guru99com")
    print("código resultado: " + str(web_url.getcode()))
    data = web_url.read()
    print(data)
if __name__ == "__main__":
    main()

Ejemplo Python 3

import urllib.request
web_url = urllib.request.urlopen('https://www.youtube.com/user/guru99com')
print('código resultado: ' + str(web_url.getcode()))
print(web_url.read().decode('utf-8'))

python

  1. Navegando SaaS y Cloud: por qué la gestión de datos meticulosa importa
  2. Palabras clave e identificadores en Python: Dominando palabras reservadas y convenciones de nomenclatura
  3. Sentencias, indentación y comentarios en Python: Guía clara
  4. Variables, constantes y literales en Python – Guía completa
  5. Dominando tipos de datos en Python: Guía práctica
  6. Dominando conversión y casting de tipos en Python: Guía completa
  7. Dominando E/S e importación de módulos en Python: Guía práctica
  8. Entendiendo variables globales, locales y nonlocal en Python
  9. Dominando Operaciones de Directorios y Archivos en Python
  10. Dominando Errores y Excepciones Integradas en Python
  11. Dominando el Manejo de Excepciones en Python: try, except, else y finally Explicados