Course Overview
TOPProgrammatic access to data through Application Programming Interfaces (APIs) is an increasingly important skill for programmers. This course teaches you both how to use Python to access APIs as well as build your own API sites. You ll learn about a variety of data serialization formats, multiple API accessing libraries, and how to build sites that host APIs using both FastAPI and Django.
This course is lab focused and you ll gain hands-on experience working with and building APIs.
Scheduled Classes
TOPOutline
TOP- Fetching Data
- Serializing and deserializing data in JSON, CSV, YAML, and XML
- Using the Python requests library
- Scraping web pages
- Using the Python Beautiful Soup library
- Authenticating to APIs
- Header based authentication
- JSON Web Tokens (JWT)
- REST Interfaces
- HTTP Methods
- Create, Read, Update, and Delete (CRUD) actions
- REST nouns and verbs
- Writing good REST URLs
- GraphQL
- How to fetch data from a GraphQL interface
- Using GraphQL web tools
- SQL
- Introduction to SQL
- Using SQLite and the sqlite3 command-line interface
- Writing Python SQLAlchemy scripts to access databases using both the text and function interfaces
- Concurrent Programming
- How to write concurrent code to speed up your API access
- The difference between I/O bound and CPU bound concurrency
- Writing Python asyncio routines
- Using Python s threading library
- Using Python s mulit-processing library
- FastAPI
- Writing an API server using FastAPI
- Writing a complete REST interface using GET, POST, PUT, PATCH, and DELETE
- How to use Pydantic to specify payload serialization
- Django for APIs
- Introduction to the Django web framework
- Using Django to access a database
- Writing web views in Django
- Using the Django Ninja library to build APIs
Prerequisites
TOPGeneral Python programming knowledge is required
- Python Foundations course or equivalent knowledge
Who Should Attend
TOP- Data scientists
- Software developers
- Python enthusiasts