From 0164f3fb92c7287088aa4dd49b483c78ab8915a9 Mon Sep 17 00:00:00 2001 From: Julien Brun Date: Wed, 21 Jan 2026 14:39:01 -0800 Subject: [PATCH 1/5] add more content to intro with why, be respectful and intro to http --- episodes/fig/http1-req-res-details.png | Bin 0 -> 37577 bytes episodes/fig/http1-url-structure.png | Bin 0 -> 21829 bytes episodes/hello-scraping.md | 48 ++++++++++++++++++++++++- 3 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 episodes/fig/http1-req-res-details.png create mode 100644 episodes/fig/http1-url-structure.png diff --git a/episodes/fig/http1-req-res-details.png b/episodes/fig/http1-req-res-details.png new file mode 100644 index 0000000000000000000000000000000000000000..606d4696f4face55fa70ca0d3672ed4451f46f34 GIT binary patch literal 37577 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 Kqejgk?0*2{270pq literal 0 HcmV?d00001 diff --git a/episodes/fig/http1-url-structure.png b/episodes/fig/http1-url-structure.png new file mode 100644 index 0000000000000000000000000000000000000000..20f4a78bc660678db71accbff9ddd100feee7909 GIT binary patch literal 21829 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 Date: Thu, 22 Jan 2026 15:35:47 -0800 Subject: [PATCH 2/5] Update episodes/hello-scraping.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Jose Niño <72319858+josenino95@users.noreply.github.com> --- episodes/hello-scraping.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/episodes/hello-scraping.md b/episodes/hello-scraping.md index df3f390..d74eb45 100644 --- a/episodes/hello-scraping.md +++ b/episodes/hello-scraping.md @@ -34,7 +34,7 @@ When you want to extract information or download data from a website that is too Here, we’ll revisit some of those core ideas to build a more hands-on understanding of how content and data are structured on the web. -We’ll start by exploring what HTTP (Hypertext Transfer Protocol) and HTML (Hypertext Markup Language) is and how it uses tags to organize and format content. +We’ll start by exploring what HTTP (Hypertext Transfer Protocol) and HTML (Hypertext Markup Language) are, and how HTML uses tags to organize and format content in a website. Then, we’ll introduce the BeautifulSoup library to parse HTML and make it easier to search for and extract specific elements from a webpage. We'll begin with simple examples and gradually move on to scraping more complex, real-world websites. From e388331bc90cd02bb7ea001b9d768f92a5ad5cfb Mon Sep 17 00:00:00 2001 From: Julien Brun Date: Thu, 22 Jan 2026 15:36:46 -0800 Subject: [PATCH 3/5] Update episodes/hello-scraping.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Jose Niño <72319858+josenino95@users.noreply.github.com> --- episodes/hello-scraping.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/episodes/hello-scraping.md b/episodes/hello-scraping.md index d74eb45..af2b0b4 100644 --- a/episodes/hello-scraping.md +++ b/episodes/hello-scraping.md @@ -44,7 +44,7 @@ We'll begin with simple examples and gradually move on to scraping more complex, When scraping data, it is essential to adhere to two main guidelines: 1. **Data Privacy and Confidentiality**: Always confirm that the data being collected is publicly available and contains no personal or confidential information. -2. **Server Load**: Avoid overwhelming the web server. When collecting large amount of data, best practice is to insert pauses between requests to allow the server to manage other traffic. +2. **Server Load**: Avoid overwhelming the web server. When collecting large amounts of data, best practice is to insert pauses between requests to allow the server to manage other traffic. ## HTTP: Hypertext Transfer Protocol quick overview From b898240f6bf1870e74e2b9ad33fa774c6b5db6c1 Mon Sep 17 00:00:00 2001 From: Julien Brun Date: Thu, 22 Jan 2026 15:36:54 -0800 Subject: [PATCH 4/5] Update episodes/hello-scraping.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Jose Niño <72319858+josenino95@users.noreply.github.com> --- episodes/hello-scraping.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/episodes/hello-scraping.md b/episodes/hello-scraping.md index af2b0b4..b320b0d 100644 --- a/episodes/hello-scraping.md +++ b/episodes/hello-scraping.md @@ -59,7 +59,7 @@ The protocol is typically http or https for secure communications. The default p ### Request -![credits: https://code.tutsplus.com/tutorials/http-the-protocol-every-web-developer-must-know-part-1--net-31177](fig/http1-req-res-details.png) +![credits: https://code.tutsplus.com/tutorials/http-the-protocol-every-web-developer-must-know-part-1--net-31177](fig/http1-req-res-details.png){alt='A diagram showing the HTTP request-response cycle between a client computer and a server, highlighting the URL + Verb request and the Status Code + Message Body response'} The actions that should be performed on the host are specified via HTTP verbs. Today we are going to focus on two actions that are often used in web forms: From 47e9eb7c079f6e5f74e4007a149abed80da5281b Mon Sep 17 00:00:00 2001 From: Julien Brun Date: Thu, 22 Jan 2026 15:37:04 -0800 Subject: [PATCH 5/5] Update episodes/hello-scraping.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Jose Niño <72319858+josenino95@users.noreply.github.com> --- episodes/hello-scraping.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/episodes/hello-scraping.md b/episodes/hello-scraping.md index b320b0d..93f8d53 100644 --- a/episodes/hello-scraping.md +++ b/episodes/hello-scraping.md @@ -53,7 +53,7 @@ When scraping data, it is essential to adhere to two main guidelines: At the heart of web communications is the request message, which is sent via *U*niform *R*esource *L*ocators (URLs). Basic `URL` structure: -![credits: https://code.tutsplus.com/tutorials/http-the-protocol-every-web-developer-must-know-part-1--net-31177](fig/http1-url-structure.png) +![credits: https://code.tutsplus.com/tutorials/http-the-protocol-every-web-developer-must-know-part-1--net-31177](fig/http1-url-structure.png){An anatomical breakdown of a URL string, labeling its components: protocol (http), host ([www.domain.com](https://www.domain.com/)), port (1234), resource path (/path/to/resource), and query (?a=b&x=y)} The protocol is typically http or https for secure communications. The default port is 80, but one can be set explicitly, as illustrated in the above image. The resource path is the local path to the resource on the server.