Mastering Python for Automation: A 12-Week Journey
Written on
Chapter 1: Introduction to Python Automation
Embark on an exciting journey to learn how to automate various tasks using Python, making your computer handle the monotonous work for you.
Image courtesy of iStockphoto, licensed to Frank Andrade.
One of the most remarkable capabilities of Python is its ability to automate routine tasks. Whether you're a complete beginner or a seasoned Python developer, mastering automation will not only enhance your Python skills but also save you from the hassle of manual work.
I have curated a 12-week curriculum utilizing various free online resources to help you learn how to automate tasks with Python, starting from the basics.
Section 1.1: Core Python Concepts
Before diving into automation, it's essential to grasp the foundational concepts of Python. Spend the initial weeks familiarizing yourself with core elements such as variables, data types, lists, tuples, and functions.
Once you've built a solid foundation, move on to more complex topics like conditional statements, loops, and dictionaries, which will be crucial for the projects in the upcoming weeks.
Keep in mind that your Python scripts will function the same way, regardless of the text editor or IDE you choose. Although the tutorial below uses PyCharm, feel free to opt for any text editor that suits your needs.
Week 1: Hello World, Variables & Data Types, Strings and Numbers
Video Tutorial: (0:01:45 to 0:38:18)
Week 2: Lists, Tuples, Functions
Video Tutorial: (1:03:10 to 1:34:11)
Week 3: Conditional Statements, Loops, and Dictionaries + Project
Video Tutorial: (1:40:06 to 2:32:44)
Create a Quiz Game: Develop a quiz game while learning to implement if/else statements and the input function.
Week 4: Try/Except, File Operations + Project
Video Tutorial: (3:04:17 to 3:21:26)
Rock, Paper, Scissors: Construct a basic version of the game while applying if/else statements, variables, lists, and loops.
After mastering these basics, you're ready to start automating tasks with Python!
Section 1.2: Web Automation with Python
One of the most fascinating tasks you can automate is web interactions. By learning to utilize Python's Selenium library, you can automate a wide range of web activities.
Moreover, you can extract data from websites effortlessly. For instance, using Pandas, you can pull CSV files from various sites and tables from straightforward sites like Wikipedia. In contrast, Beautiful Soup and Selenium allow for data extraction from HTML and JavaScript-driven sites, respectively.
Week 5: Extracting Tables and CSV Files from Websites using Pandas
- Extract Tables from Websites
- Extract CSV Files from Websites
Week 6: Using Beautiful Soup to Scrape HTML Websites
Video Tutorial: (0:00:30 to 0:19:41)
- Install Beautiful Soup
- Retrieve HTML from a website
- Scrape data and export it
- Scrape multiple links
Week 7–8: Automate Web Actions and Data Extraction with Selenium
Before delving into Selenium, familiarize yourself with some HTML and XPath, as these are essential for effective usage. The first week should focus on these topics, followed by hands-on training with Selenium.
Video Tutorial: (0:13:06 to 1:37:18)
The video covers the following subjects:
- HTML Basics and XPath
- Tags and Elements
- Tree Structure
- XPath Syntax, Functions, and Operators
- Testing Your XPath
- Automating with Selenium
- Setting Up Selenium
- Creating a Driver
- Locating Elements
- Exporting Data
- Headless Mode
- Converting PY to EXE
- Scheduling Daily Python Scripts
For those eager to explore Selenium further, consider working on a football project.
Chapter 2: Automating File Management
Working with files and folders is a common task in many workplaces. Whether it's renaming files, creating multiple directories, or changing file extensions, these tasks can be tedious. Fortunately, Python's OS module allows you to automate these processes in no time!
Week 9: Master the OS Module and Complete a Project
Explore common file system operations using the OS module, including creating multiple folders.
Automate Excel Reports
Many people have experience creating reports in Excel, often involving manual tasks like generating pivot tables, adding charts, and writing formulas. With Python, you can streamline these processes!
Week 10: Learn openpyxl to Automate Reporting
Video Tutorial: (1:42:16 to 2:25:32)
This tutorial demonstrates how to use Python to:
- Create Pivot Tables
- Generate Charts
- Write Excel Formulas
- Format Cells
- Produce Excel Reports with a Single Click
Automate Messaging and Emails
You can use Python libraries such as pywhatkit and EmailMessage+smtplib to automate sending WhatsApp messages and emails. These libraries are user-friendly and straightforward to learn.
Week 11: Sending WhatsApp Messages with pywhatkit
Video Tutorial: (0:01:32 to 0:06:49)
Learn to send WhatsApp messages to both contacts and groups.
Week 12: Sending Emails with Python
Understand how to enable 2-step verification on Gmail and send emails through Python.
Take charge of your life with Python automation! Join my email list to receive my FREE Automation Cheat Sheet, along with a community of over 10,000 people.