Omnex.Study
Курсы / Программирование
🕷️

Парсинг сайтов на Python

Собирай данные с любого сайта — от простых страниц до защищённых JS-приложений — в CSV, Excel и базу, и добавь 5 боевых парсеров в портфолио.

Средний уровень25 часов модулей уроковДоступ навсегда
3 9906 490
Начать бесплатно — первый модуль в подарок

Разовая оплата, без подписки. Школьнику курс покупает родитель из кабинета parents.omnex.study.

О КУРСЕ

**Данные — это новая нефть, и парсинг — твоя буровая вышка.** Цены конкурентов, вакансии, отзывы, товары, объявления, курсы валют, статистика — всё это лежит на сайтах в открытом виде. Проблема одна: руками это не собрать. А скрипт на Python соберёт тысячи строк, пока ты пьёшь кофе, и положит их аккуратной таблицей в Excel или базу.

Это не курс «прочитал и забыл». С третьего урока ты уже качаешь реальные страницы, к концу первого проекта — выгружаешь каталог из тысячи книг в CSV, а к финалу собираешь монитор цен, который сам ходит на сайт по расписанию и пишет тебе, когда цена упала. Мы работаем только на честных песочницах (books.toscrape.com, quotes.toscrape.com, httpbin, публичные API) — тех же приёмах, что и на боевых сайтах, но без риска кого-то положить.

Ты научишься не только вытаскивать данные из HTML, но и находить **скрытые API** — самый быстрый и надёжный способ парсинга, о котором молчат в бесплатных туториалах. А когда сайт нарисован на JavaScript и requests видит пустую страницу — поднимешь **Selenium** и заставишь настоящий браузер кликать, листать и вводить текст за тебя.

Отдельный модуль — про **устойчивость и обход блокировок**: заголовки, cookies, задержки, прокси, повторные попытки и запуск по расписанию. Именно это отличает учебный скрипт от парсера, который приносит деньги. В портфолио — **5 готовых проектов**, которые не стыдно показать на собеседовании или продать как услугу на фрилансе (сбор данных стоит от 3000 до 30000 рублей за проект).

РЕЗУЛЬТАТ

Чему научишься.

ПРОГРАММА

модулей, уроков.

01

Как устроен веб и с чего начать парсинг

Бесплатный модуль

Понимаешь, что такое парсинг и где на нём зарабатывают, как браузер общается с сервером, из чего собрана HTML-страница, как читать её через DevTools и где проходит граница закона. В конце — настроенное рабочее место.

  • Что такое парсинг и кто на нём зарабатываетТеория · 25 мин
  • HTTP простыми словами: как браузер общается с серверомТеория · 25 мин
  • Из чего состоит HTML-страницаТеория · 25 мин
  • DevTools: рентген любой страницыТеория · 25 мин
  • Легально ли парсить: robots.txt, ToS и этикаТеория · 25 мин
  • Готовим рабочее место: venv и первые библиотекиПрактика · 30 мин
  • Квиз: основы веба и парсингаТест · 20 мин
02

requests: забираем страницы с сервера

Учишься скачивать любую страницу через requests, читать статус-коды, подставлять заголовки, чтобы тебя не приняли за бота, передавать параметры и отправлять POST-запросы. В конце — практикум по сохранению страниц на диск.

  • Первый запрос: скачиваем страницу за 5 строкТеория · 25 мин
  • Что вернул сервер: статус-кодыТеория · 25 мин
  • Заголовки запроса: почему сервер видит в тебе ботаТеория · 25 мин
  • Параметры запроса: query-строки и paramsТеория · 25 мин
  • Отправляем данные: POST-запросы и формыТеория · 25 мин
  • Практикум: сохраняем страницы на дискПрактика · 30 мин
  • Квиз: работа с requestsТест · 20 мин
03

BeautifulSoup: вытаскиваем данные из HTML

Осваиваешь главный инструмент разбора HTML: варишь «суп», ищешь теги через find и find_all, достаёшь текст и атрибуты, применяешь CSS-селекторы и ходишь по дереву — родители, дети, соседи. В конце парсишь настоящую таблицу в список словарей.

  • Первый суп: разбираем HTML за минутуТеория · 25 мин
  • find и find_all: ищем нужные тегиТеория · 25 мин
  • Извлекаем текст и атрибуты (и ловим кракозябры)Теория · 25 мин
  • CSS-селекторы: select как в браузереТеория · 25 мин
  • Навигация по дереву: родители, дети, соседиТеория · 25 мин
  • Практикум: таблица характеристик в список словарейПрактика · 35 мин
  • Квиз: разбор HTML с BeautifulSoupТест · 20 мин
04

Первый боевой парсер: каталог книг

Собираешь первый полноценный проект: разбираешь структуру интернет-магазина, достаёшь карточку товара, проходишь все товары на странице циклом, обходишь пагинацию и выгружаешь тысячу книг в CSV-файл, готовый к открытию в Excel.

  • Разведка: разбираем структуру каталогаТеория · 25 мин
  • Достаём одну карточку товараТеория · 25 мин
  • Собираем все товары со страницы в циклеТеория · 25 мин
  • Пагинация: обходим все страницыТеория · 25 мин
  • Проект: парсер каталога книг в CSVПроект · 40 мин
  • Квиз: первый проект-парсерТест · 20 мин
05

Данные в порядок: сохранение и очистка

Учишься складывать добычу в любой формат: CSV, JSON, Excel и базу SQLite, а ещё чистить сырые данные от пробелов, приводить типы и убирать дубли. В конце — проект: собрать датасет цитат и выгрузить его сразу в JSON и Excel.

  • CSV: классика хранения таблицТеория · 25 мин
  • JSON: сохраняем вложенные структурыТеория · 25 мин
  • Excel и pandas за десять минутТеория · 25 мин
  • Чистим данные: пробелы, типы, дублиТеория · 25 мин
  • SQLite: своя база для парсераТеория · 25 мин
  • Проект: датасет цитат в JSON и ExcelПроект · 40 мин
  • Квиз: хранение и очистка данныхТест · 20 мин
06

Скрытые API: самый быстрый способ парсинга

Открываешь главный секрет профи: многие сайты сами отдают данные готовым JSON через скрытые API. Учишься находить их во вкладке Network, разбирать ответ через r.json(), листать страницы по параметрам — и собирать данные вообще без разбора HTML.

  • Почему сайт сам отдаёт тебе JSONТеория · 25 мин
  • Находим скрытый API во вкладке NetworkТеория · 25 мин
  • Разбираем JSON-ответ в PythonТеория · 25 мин
  • Пагинация и параметры в APIТеория · 25 мин
  • Проект: парсер через скрытый APIПроект · 40 мин
  • Квиз: работа со скрытыми APIТест · 20 мин
07

Selenium: сайты, которые рисует JavaScript

Берёшь тяжёлую артиллерию для динамических сайтов: понимаешь, когда requests бессилен, поднимаешь настоящий браузер через Selenium, находишь элементы, кликаешь, вводишь текст, ждёшь загрузки и листаешь бесконечную ленту. В конце — парсер JS-каталога.

  • Когда requests бессилен: JS-рендерингТеория · 25 мин
  • Ставим Selenium и запускаем браузерТеория · 25 мин
  • Находим элементы: By и find_elementТеория · 25 мин
  • Действия: клики, ввод текста, формыТеория · 25 мин
  • Ожидания: даём странице загрузитьсяТеория · 25 мин
  • Бесконечная лента и прокруткаТеория · 25 мин
  • Проект: парсер динамического каталога на SeleniumПроект · 45 мин
  • Квиз: динамические сайты и SeleniumТест · 20 мин
08

Промышленный парсинг: устойчивость и обход блокировок

Превращаешь учебный скрипт в парсер, который приносит деньги: ловишь ошибки и повторяешь попытки, ставишь тайм-ауты и задержки, держишь сессию с cookies, подключаешь прокси, ускоряешься многопоточностью и запускаешь всё по расписанию. Финал — монитор цен.

  • Ошибки неизбежны: try/except и повторные попыткиТеория · 25 мин
  • Вежливый парсер: тайм-ауты и задержкиТеория · 25 мин
  • Сессии, cookies и заголовки против блокировокТеория · 25 мин
  • Прокси: меняем IP-адресТеория · 25 мин
  • Ускоряемся: многопоточность для парсераТеория · 25 мин
  • Запуск по расписанию: парсер на автопилотеТеория · 25 мин
  • Финальный проект: монитор цен с уведомлениемПроект · 50 мин
  • Квиз: промышленный парсингТест · 20 мин
ИНСТРУМЕНТЫ

С чем будешь работать.

Python 3requestsBeautifulSoup4 (bs4)lxmlSeleniumpandasopenpyxlSQLite (sqlite3)Chrome DevToolsмодули csv, json, time, concurrent.futures

Парсинг сайтов на Python: первый модуль — бесплатно.

Начать бесплатно — первый модуль в подарок
Парсинг сайтов на Python | Omnex.Study