Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Complete Python Web Course: Build 8 Python Web Apps
Your Age in Seconds
Get the course e-book!
Introduction to this section (2:01)
Join the live chat for discussions and Q&A
Installing Python (0:53)
Integers and Strings (2:29)
Variables in Python (2:10)
Methods—print, str, and int (5:17)
The format method (4:50)
The .format() cheatsheet
Getting user input with the input() method (4:22)
Creating our own methods in Python (3:57)
If statements in Python (9:20)
Section assignment (2:09)
The Age Program Python Code
The Price of a Chair
Our Development Environment (1:31)
Creating virtual environments fro Python development (5:27)
Our Age application in PyCharm (3:32)
(aside) Tweaking PyCharm (5:12)
Understanding JSON and XML (7:36)
Making our first HTTP GET request (4:45)
Finding our chair price parsing HTML (3:59)
Parsing HTML data using BeautifulSoup (6:59)
Why scraping sometimes fails
Using the price as a number (6:45)
What's a Browser program Python Code
A Simple Terminal Blog
Out MongoDB e-book
Installing MongoDB (7:55)
MongoDB FAQ
Introduction to MongoDB (7:19)
Creating a PyCharm project that uses MongoDB and pymongo (6:35)
Simplifying lists on Python with list comprehension (6:19)
Introduction to object-oriented programming (14:01)
Creating our first class, the Post (6:19)
Creating a Database class for database interactions (14:40)
The last few Post methods (3:24)
Having default parameter values in Python Methods (5:03)
Understanding dates in Python: the datetime module (2:34)
Verifying that the post methods all work (4:53)
The Blog class and @classmethods (13:45)
Verifying the Blog methods all work (5:36)
Starting the menu and user interactions (9:45)
Finalising the Menu class (6:32)
Finally, running the application (3:36)
Terminal Blog program Python Code
Our First Web Application
Introduction to REST APIs (7:53)
How can we make our own API? What is Flask? (7:24)
Python cls() and argument unpacking (9:32)
Creating the User model for our application (5:22)
Starting developing the User model (10:19)
Creating the login and register (7:40)
Finding blogs by a specific author (6:31)
Allowing creation of blogs and posts (7:09)
Creating the static resources and templates (4:05)
Our first template in Jinja2 (8:35)
Beginning CSS styling of pages (8:01)
The user login page (14:32)
The user registration page (6:11)
Using Bootstrap for the first time for great styling (14:52)
How can we display a list of blogs? (9:44)
Displaying a list of posts (8:13)
The Jinja2 if statement for structure control (2:03)
Creating new blogs (front-end) (9:14)
Finalising the application by allowing to create posts! (9:00)
The Web Blog program Python Code
Price alerts for online web-stores
[2019] Creating new Python projects in PyCharm 2019 (5:27)
Get the price alert code here!
What are Flask Blueprints? (6:22)
Creating our new app structure (5:30)
Getting page content with requests (3:32)
How to find the price on a website (4:28)
Getting an element's content with BeautifulSoup (3:29)
Using RegEx to get specific information from a string (10:14)
Creating our Item model (10:38)
Adding type hinting to our application so far (4:05)
Starting up MongoDB and making sure it's working (1:03)
Preparing our Item model for saving in MongoDB (6:23)
Inserting Items into MongoDB (7:42)
Retrieving Items from MongoDB (6:28)
Notifying users in a simple way when the price is reached (16:36)
What is an abstract class in Python? (8:05)
Making more methods generic (10:47)
Finishing up the Model superclass (9:01)
How to force a subclass to have properties of a parent class (3:58)
Type hinting the current object type in a method return (8:23)
Creating items through the web interface (23:02)
Styling our site using Bootstrap 4 (9:37)
Creating the Items blueprint (6:32)
Creating a page to show all items (13:01)
Creating alerts through the web interface (9:51)
A couple problems and solutions with our app... and our way moving forward (4:26)
[2019] Developing a complete front-end with Bootstrap 4
Introducing stores to our application (14:55)
Getting rid of items (4:43)
Testing our app with stores (5:40)
Dataclasses in Python 3.7 (13:59)
Turning our models into dataclasses (9:27)
Giving names to alerts in our application (4:12)
Saving the last item price (3:58)
Creating stores through the web interface (8:57)
Editing alert properties (10:43)
Linking the alert index to the edit page (3:46)
Editing stores (7:18)
Deleting alerts (3:38)
Deleting stores (1:20)
Registering users (34:05)
Encrypting passwords in Python with passlib (6:41)
Logging in (7:26)
Viewing only your own alerts (7:10)
What are Python decorators? (9:47)
Limiting some pages only to logged in users (14:30)
Adding a navigation bar using Bootstrap (8:37)
Limiting actions to admins only (10:24)
Logging out
Signing up with Mailgun (4:07)
Sending e-mail with Mailgun (16:53)
Creating the landing page (6:00)
Simple development-stage deployments to Heroku
Signing up for GitHub (1:48)
Forking the GitHub repository from the last section (2:54)
How to install Git in Windows (3:02)
How to use the Windows Git Shell (2:07)
How to install Git on Mac (2:27)
How to install Git on Linux (1:06)
Cloning the Git repository from GitHub onto your computer (3:38)
File statuses and stages in Git (7:48)
How to generate an SSH Key for GitHub (5:26)
Git commands: git commit and git push (8:26)
Git command: git log to check previous commits (1:17)
Signing up to Heroku (3:04)
Installing the Heroku toolbelt (Command-Line Interface) (1:00)
Creating the Heroku app (3:47)
[New 2019] Changes to Heroku deployments
Getting values from environment variables in Python (5:08)
Setting environment variables in Heroku (1:22)
Setting up Heroku required files in our project so Heroku knows what to run (5:56)
Committing and pushing the new files to GitHub (2:21)
Adding servers on Heroku (called 'scaling dynos') (1:57)
Deploying our app to Heroku (2:25)
Adding Mongolab to our Heroku app as an add-on (2:49)
How to create a new Mongolab user (2:06)
Changing our program's database URI to match MongoLab's (2:26)
Using the Heroku logs to fix an Internal Service Error (3:22)
Running our deployed app in Heroku (2:16)
Another error: using the URI for the default database (3:18)
Verifying the app works, and next steps in the course (4:03)
Deploying your apps manually to a server
DigitalOcean Droplets
Creating a DigitalOcean Droplet (5:40)
Creating a non-root user (6:06)
Configuring our new user (8:02)
Installing Python in Ubuntu
Installing MongoDB in Ubuntu (3:33)
Getting our application code (3:59)
Configuring uWSGI and the system service (11:41)
Configuring nginx (7:24)
Creating a cron job in Ubuntu (3:34)
Course conclusion. Thank you! (0:27)
Creating new blogs (front-end)
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock