free web page hit counter
🛡️
Copyright Notice: This video is officially sourced and embedded from YouTube. For all copyright inquiries, reports, or removals, please contact YouTube's legal team here.
freeCodeCamp.org

freeCodeCamp.org

11,700,000 subscribers

👁 1,978,374 views

Automate with Python – Full Course for Beginners

Video Overview & Insights

Learn how to automate your life with Python! You will learn how to automate boring and repetitive tasks such as creating an Excel report, sending text messages, extracting tables from websites, interacting with websites, and more. You will learn how to use a few different Python libraries to help with automation such as Path, Selenium, XPath, and more.

You know, I have been looking for something like this to automate my Python reports. GREAT EXPLANATION for this tutorial.

— @aperxmim

💻 Source Code & Datasets: https://github.com/ifrankandrade/automation

✏️ Course from Frank Andrade. Check out his YouTube Channel: https://www.youtube.com/c/FrankAndrade5

I'm getting 403. I read that wikipedia doesn't allow agentless requests. I don't know what that means or how to deal with it

— @zwiebelsaften9175

🔗 Automation Cheat Sheet: https://artificialcorner.com/p/redeem-my-udemy-courses-for-free

🔗 Frank's 11-Hour Automation Course in Python: https://www.udemy.com/course/automate-your-life-with-python/?referralCode=7FA8B361D7A92B03A8C3

⭐️ Course Contents ⭐️
⌨️ (0:00:00​) Intro
⌨️ (0:00:31​) Project #1 Table Extraction - Extract Tables from Websites
⌨️ (0:02:53​) Table Extraction - Extract CSV Files from Websites
⌨️ (0:09:38​) Table Extraction - Extract Tables from PDFs
⌨️ (0:13:06​) Project #2 - Web Automation & Web Scraping - HTML Basics - Tags and Elements
⌨️ (0:20:57​) Web Automation & Web Scraping - HTML Basics - Tree Structure
⌨️ (0:24:22​) Web Automation & Web Scraping - XPath - Syntax, Functions and Operators
⌨️ (0:28:06​) Web Automation & Web Scraping - XPath - Test Your XPath
⌨️ (0:33:38​) Web Automation & Web Scraping - XPath - Special Characters and Syntax
⌨️ (0:38:17​) Automate The News - Installing Selenium and ChromeDriver
⌨️ (0:40:34​) Automate The News - Creating The Driver
⌨️ (0:44:46​) Automate The News - Finding Elements
⌨️ (1:04:34​) Automate The News - Exporting Data to a CSV File
⌨️ (1:12:34​) Automate The News - Headless mode
⌨️ (1:18:18​) Automate The News - Preparing Script to Be Run Everyday
⌨️ (1:30:17​) Automate The News - Convert py to exe
⌨️ (1:37:18​) Automate The News - Schedule Python Script with crontab (macOS)
⌨️ (1:42:16​) Project #3 - Automate Excel Report - Create a Pivot Table with Python
⌨️ (1:49:42​) Automate Excel Report - Add a Bar Chart
⌨️ (2:05:02​) Automate Excel Report - Write Excel Formulas with Python
⌨️ (2:19:18​) Automate Excel Report - Format Cells
⌨️ (2:23:04​) Automate Excel Report - Convert Pivot Table to Excel Report
⌨️ (2:25:32​) Automate Excel Report - Generate Excel Reports with One Click (py to exe)
⌨️ (2:33:22​) Project #4 - Automate WhatsApp

🎉 Thanks to our Champion and Sponsor supporters:
👾 Raymond Odero
👾 Agustín Kussrow
👾 aldo ferretti
👾 Otis Morgan
👾 DeezMaster

— @عبدالله-د2ق8ط

🔗 Frank's Discord Server: https://discord.gg/6xyQaj8bJK

❤️ Try interactive Python courses we love, right in your browser: https://scrimba.com/freeCodeCamp-Python (Made possible by a grant from our friends at Scrimba)

at 12:13, why do you have to set your name as foo.csv if you are immediately establishing f='csv' as the file format? couldn't you just make it ('foo', f='csv'?)

— @Krystopherson

⭐️ Course Contents ⭐️

⌨️ (0:00:00) Intro

I just started this and will complete this today itself

— @Pratish3-u1g

⌨️ (0:00:31) Project #1 Table Extraction - Extract Tables from Websites

⌨️ (0:02:53) Table Extraction - Extract CSV Files from Websites

That YouTube tutorial assumes:

no virtual environments
no corporate SSL interception
Wikipedia not blocking bots
older pandas behavior
Python ≤ 3.9
“it just works” internet access

You are running:

✅ Python 3.12
✅ pandas 2.x
✅ lxml 6.x
✅ PyCharm venv
✅ corporate/managed network
✅ modern Wikipedia bot protection

Those are completely different conditions for 2026

— @SuperChloroplast

⌨️ (0:09:38) Table Extraction - Extract Tables from PDFs

⌨️ (0:13:06) Project #2 - Web Automation & Web Scraping - HTML Basics - Tags and Elements

— @cameloussou

⌨️ (0:20:57) Web Automation & Web Scraping - HTML Basics - Tree Structure

⌨️ (0:24:22) Web Automation & Web Scraping - XPath - Syntax, Functions and Operators

my head is exploding

— @aka_giampy

⌨️ (0:28:06) Web Automation & Web Scraping - XPath - Test Your XPath

⌨️ (0:33:38) Web Automation & Web Scraping - XPath - Special Characters and Syntax

I dont know too much about python, but some very basic stuff. I am getting a 403 error: Forbidden. I don't think im getting authorized to access the website.

— @collinkoonce8557

⌨️ (0:38:17) Automate The News - Installing Selenium and ChromeDriver

⌨️ (0:40:34) Automate The News - Creating The Driver

Finally finished this after 4 weeks. Procrastinated and didn't have time at moments, but definitely learnt every concept to the core !

— @Wisdom_warrior_224

⌨️ (0:44:46) Automate The News - Finding Elements

⌨️ (1:04:34) Automate The News - Exporting Data to a CSV File

crontab is not recognized as internal or external command

— @ShoaibShamrez

⌨️ (1:12:34) Automate The News - Headless mode

⌨️ (1:18:18) Automate The News - Preparing Script to Be Run Everyday

You are not teaching how to setup jupyter notebook. So actually this is not for beginners.

— @bijoymajumder4017

⌨️ (1:30:17) Automate The News - Convert py to exe

⌨️ (1:37:18) Automate The News - Schedule Python Script with crontab (macOS)

Very helpful, thanks!

— @JoseGamboa-d9m

⌨️ (1:42:16) Project #3 - Automate Excel Report - Create a Pivot Table with Python

⌨️ (1:49:42) Automate Excel Report - Add a Bar Chart

Update: Skip this vid. Use OpenClaw instead.

— @ninetydirectory3798

⌨️ (2:05:02) Automate Excel Report - Write Excel Formulas with Python

⌨️ (2:19:18) Automate Excel Report - Format Cells

Openclaw automate everything.

— @briantran3791

⌨️ (2:23:04) Automate Excel Report - Convert Pivot Table to Excel Report

⌨️ (2:25:32) Automate Excel Report - Generate Excel Reports with One Click (py to exe)

This was automated via Python in Termux!

— @AZANALI-f1z9k

⌨️ (2:33:22) Project #4 - Automate WhatsApp

🎉 Thanks to our Champion and Sponsor supporters:

You’ve earned a lifelong viewer with this!

— @حاتمبالحاج-ك7خ

👾 Raymond Odero

👾 Agustín Kussrow

i think providing the links to practice and pdfs is a good idea

— @sonuuvarshhh

👾 aldo ferretti

👾 Otis Morgan

well... you forgot to tell the "beginners" where you are typing this stuff. what they need to download and start etc. If you're a beginner, you wouldn't know what Jupyter is

— @djjoelb

👾 DeezMaster

--

read_html() does't work since wikipedia blocks direct automated web scraping. So, you have to pass headers, that mean it will get you are not bot.

```python
import pandas as pd

import requests

from io import StringIO



url = "https://en.wikipedia.org/wiki/List_of_The_Simpsons_episodes_(seasons_1%E2%80%9320)"



headers = {

"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0 Safari/537.36"

}



response = requests.get(url, headers=headers)



html_string = StringIO(response.text)

simpsons = pd.read_html(html_string)
```

Then you are good to go.

— @aasiksihaab46

Learn to code for free and get a developer job: https://www.freecodecamp.org

Read hundreds of articles on programming: https://freecodecamp.org/news

Can I give double like to this video? 😉

— @ecxtor

More User Perspectives

@

This course is for beginners in Automation, not in Python.
If you have a simple idea about Python but forget most of the terms you need first to refresh your memory with quick videos (between 30 to 180 minutes).
And if you don't have a simple idea of what Python is then you should learn it from Zero with full courses.

@masadi.01
@

great job

@rayenbenyahmed3056
@

Can someone tell me how much Python and its libraries are necessary to learn for this course?

@maryam8c
@

Python automation was easier when I used Privoxity residential proxies, thanks for the course

@Tonalika
@

Amazing Course!! I've gained a lot about automations, Thank you so much

@jaskiratsinghnarang9963
@

Just for your info:
This video was released before ChatGPT came out.

@aashsyed1277
@

hello rohit gautam, complete kiya nhi hoga ab tak ye?

@prof.malfunction337
@

Hello, Pls I keep getting one result repeated over and over again even if my code is exactly like yours. Pls assist. I'm talking about when trying to Automatate the News using Selenium

@hedaerva
@

Wow! This Python playlist is absolutely amazing! 🎉 It covers everything from the basics to advanced topics, and the explanations are super clear and easy to understand. As a python developer, I’m really appreciating how well-structured the lessons are. Can’t wait to dive into more videos and master Python! 🐍🔥 Thanks for putting this together!

Highly recommend this to anyone wanting to learn Python! 🙌

#Python #LearnPython #Programming

@Irfan_Qureshi-i6w1y
@

1:05 how to get to this page tho

@laszlob3683
@

This guy comes and sots down for hours to teach us this. Than you!

@DaAIGuyRules
@

Instantly hit the like button, hat a GREAT way to start the course. Big thanks to everyone involved

@asefsa9102
@

the worst course on this channel!

@LearnLikeGenius
@

for those whose option.headless not working try this instead in the place of option.headless


option.add_argument('--headless')
option.add_argument('--disable-gpu')

option.add_argument('--window-size=1920,1080')

@vishalvalo
@

Read docs 😂

@DivineWebDev
@

if in news automation it shows error :no such element , you could use containers=driver.find_elements(by='xpath',value='//div[@class="teaser__copy-container" and .//a[@href]]')
as in some div of the website there is no <a> tag or href in it so this only picks the div which has a href in it , or you could just use try except for the link and set link='n/a' in except

@mastrubatingbear
@

I think this course may be for people that are beginners in automation, not necessarily beginners in python. That being said, great course!

@hyphenizm
@

I think is fine. It is beginning in automation. If you are beginner in phyton then go check those videos first

@cristofervidre8378
@

@sanjith_sambath Urgent resolution of error: In the news automation project: On running the news-headlines.pu, that is the data extraction file, I am getting a csv with only 1 news repeated for all rows. The Xpath value provided when pasted in inspect on browser gives 65 different results. Please help as soon as possible.

@BhagyeshaKhairnar
@

for folks who have struggled with Camelot installation, look at the youtube video titled

Camelot-Python Ghostscript is not installed Issue Resolved by Vishal Gupta. took me ages to find but it worked. it requires sorting out the 2 pathways and adding bin and temp at the end. then a complete restart of Jupyter notebook. Good luck ! in jupyter: tables = camelot.read_pdf('tables = camelot.read_pdf('C:\\Users\\XX\\Downloads\\foo.pdf', pages='1')

tables')

tables

@Prasadavajjhala
@

here beginner means, beginner in automation

@CodingDork-oj9ew
@

Robinson Barbara Rodriguez Lisa Lewis David

@ИринаКим-ъ5ч
@

Wilson Kimberly Thompson Melissa Moore Michelle

@ИринаКим-ъ5ч
@

Rodriguez Larry Lopez Edward Walker Scott

@ИринаКим-ъ5ч
@

I recently started learning it. and I faced a problem where my pc doesn't creat the CSV file that is metioned . I tried a different route to write dataframe but that didn't work as well . searched for this solution in the internet but found nothing helpful .What should I do now??

@nazmusshakib194
@

I have a proplem installing Camelot as I downloaded ghostscript and tkinter and yet an issue when try to run camelot on coding like appearing ddl issue

@mohamedhussien2101
@

Davis Jason Taylor David Hall Ronald

@jackymarcel4108
@

Rodriguez Nancy Perez Donna Thomas Lisa

@DuncanPenny-v7q
@

Thanks

@arvindpandey8793