Complete Python Web Course: Build 8 Python Web Applications

Video description

Do you know what is common between Netflix, Instagram, Spotify, Dropbox, and Uber? All these applications are made in Python. There is no doubt that Python is one of the most popular programming languages in the modern technological world. This course will teach you Python and web development skills that will help you to build real-time applications.

The course begins with an introduction to Python fundamentals, and teaches you how to install Python 3.4.3 on your machine. Moving ahead, you will understand how the internet works, find out how Python retrieves data, and get an overview of the MongoDB database. Next, you will apply what you have learnt, and use Flask to create your first web application, a simple blog where users can register and publish posts. Then, you will step up your game and create a web application in Python to receive notifications when prices of items in online stores go down. Towards the end, you will deploy your application to Heroku by integrating GitHub, and also learn how to manually deploy on a server using Ubuntu.

By the end of this course, you will develop essential Python skills needed to build robust web applications.

What You Will Learn

  • Understand the programming structure of Python
  • Create virtual environments for Python development
  • Build reliable web applications in Python
  • Understand the Flask framework
  • Discover how to create your own Application Programming Interfaces (APIs)
  • Develop a complete front-end application with Bootstrap 4
  • Deploy your applications to Heroku


If you are a software developer who is interested to build web applications in Python, then this course is for you. Basic knowledge of Python will be beneficial to effectively understand the concepts covered in the course.

About The Author

Jose Salvatierra Fuentes: Jose Salvatierra has been teaching online for over seven years, and he loves helping students learn to code and master software development. He founded Teclado to bring software development to everyone; his objective is for you to truly understand everything that goes on behind the scenes.

Coding is extremely rewarding. As you learn, things start to click and make sense. You can join the dots of all the things that weren’t quite clear before.

Jose can help you with Python and JavaScript issues, particularly in web and backend development. He is experienced with programming libraries and frameworks such as Flask, React, React Native, and AngularJS. He has worked extensively with UNIX systems, MongoDB, PostgreSQL, and advanced system architecture design.

Publisher resources

Download Example Code

Table of contents

  1. Chapter 1 : Your Age in Seconds
    1. Introduction
    2. Installing Python
    3. Integers and Strings
    4. Variables in Python
    5. Coding Exercise and Solution - Creating Variables
    6. Methods Print(), Str(), and Int()
    7. Coding Exercise and Solution - Print(), Str(), and Int()
    8. The Format() Method
    9. Coding Exercise and Solution - Format()
    10. Getting User Input with the Input() Method
    11. Coding Exercise and Solution - User Input
    12. Creating Your Own Methods in Python
    13. Coding Exercise and Solution - Creating Functions
    14. If Statements in Python
    15. Coding Exercise and Solution - If Statements
    16. Assignment Video
  2. Chapter 2 : Price of a Chair
    1. Our Development Environment
    2. Creating Virtual Environments for Python Development
    3. Our Age Application in PyCharm
    4. (Aside) Tweaking PyCharm
    5. Understanding JavaScript Object Notation (JSON) and Extensible Markup Language (XML)
    6. Making our First Hyper Text Transfer Protocol (HTTP) GET Request
    7. Finding our Chair Price Parsing Hyper Text Markup Language (HTML)
    8. Parsing Hyper Text Markup Language (HTML) Data using BeautifulSoup
    9. Using the Price as a Number
  3. Chapter 3 : A Simple Terminal Blog
    1. Installing MongoDB
    2. Introduction to MongoDB
    3. Creating a PyCharm Project that Uses MongoDB and PyMongo
    4. Simplifying Lists in Python with List Comprehension
    5. Introduction to Object-Oriented Programming
    6. Creating the First Class - the Post
    7. Creating a Database Class for Database Interactions
    8. The Last Few Post Methods
    9. Having Default Parameter Values in Python Methods
    10. Understanding Dates in Python - The Datetime Module
    11. Verifying that All the Post Methods Work
    12. The Blog Class and @classmethods
    13. Verifying that All the Blog Methods Work
    14. Starting the Menu and User Interactions
    15. Finalising the Menu Class
    16. Finally, Running the Application!
  4. Chapter 4 : Our First Web Application
    1. Introduction to REST APIs
    2. How Can You Make Your Own API? What is Flask?
    3. Python Cls() and Argument Unpacking
    4. Creating the User Model for Your Application
    5. Starting to Develop the User Model
    6. Creating the Login and Register
    7. Finding Blogs by a Specific Author
    8. Allowing Creation of Blogs and Posts
    9. Creating Static Resources and Templates
    10. Your First Template in Jinja2
    11. Beginning Cascading Style Sheets (CSS) Styling of Pages
    12. The User Login Page
    13. The User Registration Page
    14. Using Bootstrap for the First Time for Great Styling
    15. How Can You Display a List of Blogs?
    16. Displaying a List of Posts
    17. The Jinja2 If Statement for Structure Control
    18. Creating New Blogs (front-end)
    19. Finalising the Application by Allowing to Create Posts
  5. Chapter 5 : Price Alerts for Online Web Stores
    1. Creating New Python Projects in PyCharm 2019
    2. What are Flask Blueprints?
    3. Creating Your New Application Structure
    4. Getting Page Content with Requests
    5. How to Find the Price on a Website?
    6. Getting an Element's Content with BeautifulSoup
    7. Using RegEx to Get Specific Information From a String
    8. Creating Your Item Model
    9. Adding Type Hinting to Your Application
    10. Starting Up MongoDB and Making Sure it Works
    11. Preparing Your Item Model for Saving in MongoDB
    12. Inserting Items into MongoDB
    13. Retrieving Items from MongoDB
    14. Notifying Users in a Simple Way when the Price is Reached
    15. What is an Abstract Class in Python?
    16. Making More Methods Generic
    17. Finishing Up the Model Superclass
    18. How to Force a Subclass to Have Properties of a Parent Class?
    19. Type Hinting the Current Object Type in a Method Return
    20. Creating Items Through the Web Interface
    21. Styling Your Site Using Bootstrap 4
    22. Creating the Item's Blueprint
    23. Creating a Page to Show All Items
    24. Creating Alerts Through the Web Interface
  6. Chapter 6 : Developing a Complete Front-End with Bootstrap 4
    1. Introducing Stores to Your Application
    2. Getting Rid of Items
    3. Testing Your Application with Stores
    4. Dataclasses in Python 3.7
    5. Turning Your Models into Dataclasses
    6. Giving Names to Alerts in Your Application
    7. Saving the Last Item Price
    8. Creating Stores Through the Web Interface
    9. Editing Alert Properties
    10. Linking the Alert Index to the Edit Page
    11. Editing Stores
    12. Deleting Alerts
    13. Deleting Stores
    14. Registering Users
    15. Encrypting Passwords in Python with Passlib
    16. Logging In
    17. Viewing Only Your Own Alerts
    18. What are Python Decorators?
    19. Limiting Some Pages Only to Logged In Users
    20. Adding a Navigation Bar Using Bootstrap
    21. Limiting Actions to Administrators (Admins) Only
    22. Signing Up with Mailgun
    23. Sending E-Mail with Mailgun
    24. Creating the Landing Page
  7. Chapter 7 : Simple Development-Stage Deployments to Heroku
    1. Signing Up for GitHub
    2. Forking the GitHub Repository from the Last Section
    3. How to Install Git on Windows?
    4. How to Use the Windows Git Shell?
    5. How to Install Git on Mac?
    6. How to Install Git on Linux?
    7. Cloning the Git Repository from GitHub onto Your Computer
    8. File Status and Stages in Git
    9. How to Generate a Secure Shell (SSH) Key for GitHub
    10. Git Commands: Git Commit and Git Push
    11. Git Command: Git Log to Check Previous Commits
    12. Signing Up to Heroku
    13. Installing the Heroku Toolbelt (Command-Line Interface)
    14. Creating a New Heroku Application
    15. Getting Values from Environment Variables in Python
    16. Setting the Environment Variables in Heroku
    17. Setting Up Heroku Required Files in Your Project so Heroku Knows What to Run
    18. Committing and Pushing the New Files to GitHub
    19. Adding Servers on Heroku (Called 'Scaling EDynos')
    20. Deploying Your Application to Heroku
    21. Adding MongoLab to Your Heroku Application as an Add-On
    22. How to Create a New MongoLab User?
    23. Changing Your Program's Database URL to Match MongoLab's
    24. Using the Heroku Logs to Fix an Internal Server Error
    25. Running Your Deployed Application in Heroku
    26. Another Error: Using the URL Default Database
    27. Verifying that the Application Works, and the Next Steps in the Course
  8. Chapter 8 : Deploying your Applications Manually to a Server
    1. Creating a DigitalOcean Droplet
    2. Creating a Non-Root User
    3. Configuring a New User
    4. Installing MongoDB in Ubuntu
    5. Getting Your Application Code
    6. Configuring uWSGI and the System Service
    7. Configuring NGINX
    8. Creating a Cron Job in Ubuntu
    9. Course Conclusion. Thank You!

Product information

  • Title: Complete Python Web Course: Build 8 Python Web Applications
  • Author(s): Jose Salvatierra Fuentes
  • Release date: September 2019
  • Publisher(s): Packt Publishing
  • ISBN: 9781839215094