Project

Text-Based Browser

Hard
1703 completions
~ 18 hours
4.0

Learn the basics of HTTP and how to work with it in Python. You'll also gain an understanding of web scraping and how to organize data on a web page. You'll work with such Python libraries as requests, colorama, and beautifulsoup. You will become familiar with Python input and output. Also, study ways to parse HTML.

Provided by

JetBrains Academy JetBrains Academy

About

Having the option to read online documentation or find something on the Internet from the command line or terminal can really come in handy. Let's use Python to create a text-based browser. In this project, you will create a simplified browser that will ignore JS and CSS, won't have cookies, and only will show a limited set of tags. But it will still be good enough for some situations, and building it will be fun! You will practice concepts frequently tested in technical interviews at top tech companies.

Training project icon

Training project

This project allows you to practice and strengthen your coding skills, helping you get ready for more advanced tasks ahead.

What you'll learn

Once you choose a project, we'll provide you with a study plan that includes all the necessary topics from your course to get it built. Here’s what awaits you:
Time to add convenience. The program should store our pages to files and display them if the user enters a shortened request. Pay attention to input errors!
Sometimes you want to return to the past... Let's use the stack to add a “back” button.
Time for things to get real. Now we’ll only work with actual web pages!
It’s important to make the pages readable. The browser should output only certain text from HTML tags.
The time has come to design pages in our browser. We’ll read about the new library, experiment a bit, and highlight our links in blue.

Reviews

Redcloak avatar
Redcloak
9 months ago
Weirdly, I learned more from some of the less-than-clear task descriptions and the wonky behavior from the tester. I had to dig and hack at the problems to get to solutions; just like you'll have to in real life! Clients/bosses aren't always clear about what they actually want.
Andrew Frey avatar
Andrew Frey
10 months ago
I learned to pull website text based on tag, extract relevant text, and color it based upon its original tag.
DisparateBits
1 year ago
Pretty good, stage 5 was almost too easy using get_text() but you can't use it (I think?) for stage 6 so I would make clear that you probably shouldn't bother with it.

4.0

Learners who completed this project within the Python Developer course rated it as follows:
Usefulness
4.4
Fun
3.9
Clarity
3.7