
Compare BeautifulSoup, Selenium, and Scrapy to show which fits beginners, JavaScript-driven sites, or speed-focused projects, highlighting ease of setup, JS support, and asynchronous scraping.
Install Python from python.org, verify the version in the terminal, and set up PyCharm Community Edition to create a new project and manage libraries like Pandas and NumPy.
Learn Python basics for web scraping, including lists, indexing, for loops, and if statements, export data with with open and pandas, and handle errors with try/except.
Explore HTML basics for web scraping, including tags, attributes, and key elements like head, body, header, article, p, h1, div, nav, ul, li, a, table, tr, td, and iframe.
Install bs4, requests, and the lxml parser with pip in your IDE, then import BeautifulSoup from bs4 to fetch HTML for your first scraping.
Learn to fetch a webpage's html with requests, parse it with BeautifulSoup, and extract the title and transcript for further text analysis.
Extract the page title and full transcript by locating the article root, h1 tag, and div with class 'full script', then clean the text with strip and a space separator.
Export extracted data to a text file in Python by opening a file in write mode, composing an f-string name from the title, and writing the transcript into titanic.txt.
Learn to scrape multiple links on a page with beautiful soup find_all, extract hrefs, build full URLs with a root, loop through pages, and save transcripts to text files.
Learn how XPath syntax enables selecting elements from HTML for web scraping with Selenium and Scrapy. Use double slash, brackets, attributes, and functions like contains, startswith, and logical operators.
Test your xpath expressions on a Titanic transcript html sample, using h1, p, and div elements to extract title, plot, and transcript text, with contains, indexing, and logical operators.
Learn to build robust XPath expressions using slash, double slash, text(), dot, double dot, and asterisk to locate elements and extract text for web scraping with Selenium and Scrapy.
Identify JavaScript driven websites using the browser inspector to verify dynamic loading, then disable JavaScript to confirm whether data loads, guiding Selenium based scraping decisions.
Import selenium webdriver, define the chrome driver path, and create a driver to open a website for scraping. Run the script to launch the browser and close it with driver.quit.
Extract data from HTML tables with Selenium by locating TR and TD elements, looping through rows, and capturing date, home team, score, and away team using tag name and XPath.
Export data from Selenium into a CSV using pandas by building a dataframe from dictionaries, configuring to_csv with index=False, and saving the football_data.csv.
Learn to build a Selenium bot in Python to paginate Audible pages, scrape title, author, and runtime, and export results to books.csv with pandas.
Learn how to enable headless mode in Selenium, set options and window size, print the title during scraping, and save results to a CSV file.
Learn to automate multi-page scraping with selenium by identifying the pagination elements, determining the last page, and looping through pages with the next button and implicit waits.
Learn how implicit and explicit waits in Selenium Python improve reliability when scraping dynamic JavaScript content, including presence of element located, and when to use each for robust code.
Download and install Anaconda, then create a new virtual environment for Python. Install Scrapy using conda forge to manage dependencies easily.
Open a terminal and run Scrapy to list commands, then explore bench, fetch, and generate spiders with a predefined template, plus start project, settings, shell, and version.
Explore Scrapy templates—the simple scraping spider and the crawl spider—and learn to find elements with XPath using response, including get all vs get, and yield for data.
Use Scrapy's shell to test code, inspect a page with XPath, fetch a URL, and extract text and lists such as country names.
Learn to scrape data from multiple pages with Scrapy by building a country-specific parse callback, extracting year and population via xpath, and exporting to JSON with country metadata.
Master Scrapy pagination by building a spider named audible, extract titles, authors, and runtimes with XPath from the homepage and all pages, then export results to csv.
Scrape all audible pages by locating the pagination bar with xpath, extract next page hrefs, iterate with scrapy, and compare speed to selenium while exporting results to csv.
Learn how to check and change the user agent in Scrapy by inspecting browser headers, updating settings or start_requests, and applying headers to all requests.
Create and configure a crawl spider using Scrapy's crawl template, defining rules, allowed and denied patterns, and restrict_xpath to follow targeted links.
Learn to paginate web scraping with the Chrome template by following the next page button and building an XPath to navigate to and extract transcripts from subsequent pages.
Learn to change the user agent in a scrapy spider using a curl template, settings.py, and start_requests to set headers and a custom user_agent value.
Explore building and configuring scrapy pipelines to export scraped data to a database, using open_spider and close_spider hooks, logging warnings, and item pipeline priorities.
Learn to store scraped data in MongoDB by creating a cloud cluster, installing Pymongo, and inserting items into a transcripts collection via a Scrapy spider.
Store scraped transcripts in a SQLite database by creating a transcripts table with title, plot, transcript, and url, and insert data using Python's sqlite3.
Have you ever thought about how important is data in our everyday life?
It doesn't matter if you're a data scientist, data analyst, or programmer, getting access to the data you need is important! This is why some of the top Fortune 500 companies such as Walmart, Target, and CNN use web scraping to stay ahead with data. We can say this is one of their best secret weapons.
Welcome to Web Scraping in Python with BeautiuflSoup, Selenium, and Scrapy!
The most complete and project-oriented course. In this course, we're going to learn web scraping solving cool projects that will help us scrape data off some of the most well-known websites. To name a few:
Amazon Audible
Football Stats
Worldometers
Movie pages
This is the most complete web scraping course in Python and is split into 3 parts: BeautiuflSoup, Selenium, and Scrapy. My goal is that you become an expert in web scraping. This is why only 10% of the content of this course is focused on Beautiful Soup, while 40% is dedicated to Selenium and 50% to Scrapy.
Why I built the course this way?
Beautiful Soup has a lot of limitations, but it's still useful for a gentle introduction to web scraping. In contrast, if you learn Selenium you will be able to scrape any website. and if you add Scrapy to your toolkit you will be able to scrape any website faster than with any other web scraping library. Throughout this course, you will see the power of web scraping with each Python library.
What makes this course different from the others, and why you should enroll?
This is the most updated and complete web scraping course in Python. You will be using Python 3.7, Scrapy 2.4, Selenium 3.141.0 and BS4
This is the most project-based course you will find. We will scrape many of the most well-known websites
You will have an in-depth step by step guide on how to become a professional web scraper.
You will learn how to use Selenium, Scrapy, and Splash to scrape JavaScript-driven websites. You won't find any tutorials out there that teach how to use these web scraping tools the way I do in this course.
You will learn how to use ChatGPT for web scraping
30 days money back guarantee by Udemy
At the end of the course, you'll know how to build your own web scraper to obtain new data, learn the best techniques for web scraping and more.
Join me now and let's start scraping the web together!