1. Introduction to HTTP and how the network works
HTTP mechanics are the foundation for both scraping and API work in Python. The section explains the client-server model, request and response structure, methods such as GET or POST, headers and status codes, and using DevTools to inspect network traffic.
- client–server model,
- HTTP methods (GET, POST, PUT, DELETE),
- headers, response statuses,
- structure of an HTTP request and response,
- tools for traffic analysis (DevTools).
2. Basics of web scraping
Before writing scraping scripts, it is necessary to understand when this technique is appropriate and how websites are structured. The section introduces HTML and DOM, locating elements with CSS selectors and XPath, and operational constraints such as robots.txt and rate limiting.
- what web scraping is and when to use it,
- HTML and DOM structure,
- identification of elements on the page (CSS selectors, XPath),
- limitations and good practices (robots.txt, rate limiting).
3. Web scraping using requests and BeautifulSoup
With requests and BeautifulSoup, data can be collected directly from HTML documents without browser automation. The section covers downloading pages, parsing document structure, extracting target content, handling pagination and multiple subpages, and saving results to CSV or JSON.
- retrieving HTTP pages (requests),
- parsing HTML (BeautifulSoup),
- extracting data from documents,
- handling pagination and multiple subpages,
- saving data (CSV, JSON).
4. Communication with API
APIs define how applications exchange data, and this section explains that communication model in practice. It covers REST conventions, authorization with keys or tokens, request and response handling, JSON processing, and dealing with errors or request rate limits.
- what API is and how it works,
- types of API (REST),
- authorization (API key, token),
- sending requests and receiving responses,
- working with JSON,
- error handling and request limits.
5. Practical use of API
Using API in day-to-day work means connecting external services with internal processes. This part covers retrieving and transforming data, merging information from different sources, and building automations that rely on API calls instead of manual operations.
- integration with external services,
- retrieving and processing data,
- combining data from different sources,
- automation of processes using API.
6. Selenium – automation and scraping of dynamic websites
Selenium is used when data appears only after browser actions or JavaScript execution. Participants work with page elements, forms, sessions, and login flows, then automate browser tasks in both standard and headless mode to extract data from dynamic websites.
- introduction to Selenium,
- browser control,
- interaction with page elements (clicks, forms),
- data extraction from dynamic websites (JavaScript),
- handling login and sessions,
- headless browser and task automation.
7. Good practices and optimization
Reliable automation depends on more than working code. Here the focus is on improving script stability, organizing code for reuse, and managing execution time and performance, while also reducing the risk of blocks or bot detection during repeated data collection.
- script stability,
- avoiding blocks and bot detection,
- time and performance management,
- code structuring and reuse.
8. Business applications
From a business perspective, scraping and API integrations support ongoing price tracking, competitor observation, and market data aggregation. The section also shows how collected data feeds automated reporting and how multiple systems or sources can be connected into a consistent information flow.
- price and competition monitoring,
- aggregation of market data,
- reporting automation,
- integrations of systems and data sources.