Web Scraping 101 with Python3 using REQUESTS, LXML & SPLASH
What you'll learn
- LXML core fundamentals
- XPath & CSS selectors
- How send HTTP requests with Python
- Scraping HTML web pages
- Scraping multiple pages using recursion
- Scraping APIs
- Splash HTTP API
- Authentication and Login to websites using Requests
- Web scraping best practices
- Building datasets
- Basic level of Python
- PC with Internet connection
What is web scraping ?
Let's say your boss at work gave you a task where he wants you to extract about 1000 product from a website, structure the data and save it to a database, would you copy paste manually all the product details from the product name, url and price ? I can imagine you would work days and nights and you wont finish the task, so this is where web scraping shines. So web scraping, or web harvesting or web data extraction is like writing a script that will automate data extraction from websites in a matter of minutes !.
Why learn Web Scraping ?
Whether you're a data analyst, a web developer or even someone who wants to work as a freelancer you should learn web scraping.
For a data analyst building a dataset is extremely important, so without web scraping you simply can't generate it in addition to that adding web scraping in your resume is a plus for you.
Web scraping can be used in a variety of fields, so let me give you some examples on what you can do with it:
Drop shipping where basically you gonna constantly scrape products from different online stores and show case them on your website to make money,
Monitor products prices to get the best deals,
Web scraping freelancer
Of course there are tons and tons and variety of fields where web scraping can be extremely beneficial.
Is this course the right one for you ?
I've carefully planned and designed this course to be beginner friendly, from my experience I know those who do web scraping are mostly data analyst with no background knowledge on how the web works, how requests are made, how to locate and parse the data from the web and much much more, in addition to that this the most updated course regarding the material included and the tools used, so in this course
I'll introduce to you the most used web scraping tools/frameworks
We will setup the development environment from scratch
You will learn and understand LXML core fundamentals
How to use XPath & CSS selectors to select the data from a web page
How the web works (Request/Response)
How to scrape simple HTML web pages
How to scrape multiple web pages
Extract data from APIs
Store the extracted data whether to JSON/CSV files or MongoDb/SQLite3
Exclusive tips and tricks regarding web scraping
Finally this course is project based, each section starting from the 2nd one we will experiment with a different website, each project has a certain degree of difficulty and each one is completely independent from other projects.
Is there is any assignments/exercises included in this course ?
Yes, each section has an assignment included to it, this will help to get your hands dirty and by the end of each section after doing the assignment included you will feel more confident and comfortable with web scraping.
Why LXML and not BeautifulSoup ?
LXML is a lightweight HTML parser even the most popular web scraping framework (Scrapy) is built on the top of LXML, BeautifulSoup is a little bit overloaded with the number of functions exposed to us, it has more functions to use, yes that's right ! however in Web Scraping most of the time we use XPath and CSS Selectors to navigate and select what to scrape from the HTML web page (tree) so there is no need to learn about new functions and wasting all that time to familiarize yourself with the BeautifulSoup API and the internal architecture, in addition to all of that LXML in terms of performance is way better than BeautifulSoup.
Who is your instructor ?
Hi! I'm Ahmed nice to meet you, my students prefer to call me web scraping Ninja and currently I have taught more than 2000 students around the world how to do web scraping. I personally do web scraping on daily basis whether for fun, for personal projects or as a freelancer and guess what ? I even have a master degree in computer science.
Should I enroll to this course ?
Honestly, by enrolling to this course you have nothing to lose, because if this course didn't meet your requirements, you can always ask for a refund in less than 30 days from the day you enrolled to the course guaranteed by Udemy with NO QUESTION TO ASK !
SO IF YOU DON'T KNOW ANYTHING ABOUT WEB SCRAPING & YOU DON'T KNOW WHERE TO START ENROLL NOW ! :)
Who this course is for:
- Anyone wants to learn Web scraping using Python, Requests and LXML
- Complete beginners with no background on web scraping
- Those who already have basic familiarity with web scraping and want to fill the gaps
Who I am?
I’m Ahmed Rafik, I'm a self-taught developer & an online teacher on Udemy. I've helped thousands of people learning web scraping with Python using different tools such as Scrapy, Splash & Selenium.
As a self-taught developer, I found myself jumping between different tutorials and (e-)books trying to understand how things can work out together, I was literally wasting so much time trying to connect the dots rather than learning how to code and over time this has become so overwhelming with lots of things to learn and to connect.
I believe coding should be easy for everyone but this also requires you to choose the right instructor with the right knowledge.
In my courses, I'm gonna teach you the skills you need to start your web scraping career from the get-go with no fluff. I try as much as possible to avoid the boring theoretical explanations unless it's necessary, I always keep my courses up to date and that's what helped me to have the highest-rated and the best selling web scraping courses on Udemy.
I can't wait to see you enrolled in one of my courses, I'll make sure to be there for you on every step you make and answer any questions you have.