No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Solicitudes HTTP con Requests

12/20
Recursos

Aportes 15

Preguntas 3

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Reg铆strate o inicia sesi贸n para participar.

Hola Chicos! 馃槃

  • Crear un entorno
python3 -m venv env
  • Activar un entorno virtual
source env/bin/activate
  • Verificar que estemos dentro del entorno virtual
which python3
  • Instalar la dependencia dentro del entorno virtual
pip3 install requests
  • Verificar la instalacion
pip3 freeze
  • Crear el archivo para que cualquier persona pueda desplegar el proyecto
pip freeze > requeriments.txt

STORE

import requests

def get_categories():
    r = requests.get('https://api.escuelajs.co/api/v1/categories')
    print(r.status_code)
    print(r.text)
    print(type(r.text))
    categories = r.json()
    for category in categories:
        print(category['name'])

MAIN

import store

def run():
    store.get_categories()

if __name__ == '__main__':
    run()

Link de Platzi Fake Store API:

https://fakeapi.platzi.com/

Genial, es el primer curso que me toca sin aportes, saludos comunidad !

Esta clase me hizo pensar en la opci贸n que tenemos para obtener datos tambi茅n con web scraping, y encontre dos cursos en platzi que ya quedan agregados a la ruta:

https://platzi.com/cursos/webscraping/
https://platzi.com/cursos/web-scraping/

  • Las solicitudes HTTP son mensajes enviados por un cliente a un servidor para solicitar informaci贸n o enviar datos al servidor. La biblioteca de solicitudes es una biblioteca popular de Python para realizar solicitudes HTTP. Con la biblioteca de solicitudes, puede enviar solicitudes HTTP utilizando Python.

  • Este es un ejemplo de c贸mo utilizar la biblioteca de solicitudes para realizar una solicitud GET a un sitio web:

import requests

response = requests.get('https://www.example.com')

print(response.status_code)
print(response.text)

  • La primera l铆nea importa la biblioteca de Solicitudes. La segunda l铆nea env铆a una solicitud GET al sitio web https://www.example.comy almacena la respuesta en la responsevariable. La responsevariable es una instancia de la Responseclase, que contiene la respuesta del servidor a la solicitud.

  • El status_codeatributo del Responseobjeto contiene el c贸digo de estado de la respuesta, como 200 para una solicitud exitosa o 404 para un error de p谩gina no encontrada. El textatributo contiene el cuerpo de la respuesta como una cadena.

Tambi茅n puede usar la biblioteca de Solicitudes para enviar otros tipos de solicitudes HTTP, como POST, PUT, DELETE, etc.

pip env es una gran herramienta para crear entornos. Pero cuando el volumen de proyectos crece se vuelve dif铆cil administralos, por eso recomiendo aprender a trabajar con Conda (que es 煤ltil tanto para proyectos de Data Science como para proyectos de Backend). El curso de Jes煤s te ense帽a a usarlo. https://platzi.com/cursos/jupyter-notebook/

Si te aparece la api as铆:

Puedes agregar la extensi贸n de google JSON Viewer para que se vea as铆:

Solo entra en el enlace y selecciona la opci贸n Agregar extesi贸n.

hoy dias tambien creo que es importante saber que podemos usar pipenv

Siempre me es emocionante tocar una API.
Ya sea con axios, postan, requests. Siempre es divertido ver todo el contenido que le ponen a los json

me encanto este ultimo diccionario:

{"id":17,"name":"no joda","image":"https://placeimg.com/640/480/any"}

Les recomendar茅 una buena pr谩ctica, en el archivo de store py declaren la url como una variable:

import requests

api_url_categories = 'https://api.escuelajs.co/api/v1/categories'


def get_categories():
    r = requests.get(api_url_categories)
    print(f'Status code: {r.status_code}')
    print(f'Text: {r.text}')
    print(f'type: {type(r.text)}')
    categories = r.json()
    for category in categories:
        print(category['name'])

Incluso pueden tener un archivo de Python donde solamente guarden las urls que vayan a llamar y hacen import de las variables o constantes de ese archivo y as铆 es m谩s f谩cil tener todo en 1 solo lugar.

Una clase super interesante!!! Muy util para obtener datos paraluego analizarlos!

alguien mas tiene este error?

raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='api.escuelajs.co', port=443): Max retries exceeded with url: /api/v1/categories (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f6a1842a140>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution'))

hubiera estado bien completar el ciclo con Response 馃槮

Segundo post!!! Saludos