training-web.ruГлавнаяКатегорииО насКарта сайтаПоискТёмная тема

Категории

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

Создано: 09 февраля 2025Автор: Егор Астапов94 просмотраСложность: легкий

Поговорим о парсинге страниц сайтов Python. Способов парсинга много, но начнём с самых простых. Вы можете скачать страницу при помощи библиотеки requests и потом c помощью регулярных выражений вытаскивать данные. Это не просто, потому что регулярные выражения - довольно сложная тема.

BeautifulSoup - это библиотека для парсинга HTML и XML документов. Библиотека простая для освоения. Она предоставляет простой и удобный способ извлекать данные из веб-страниц, а также облегчает работу с этими данными. Вам придётся сначала скачать контент страницы и потом использовать библиотеку для парсинга текста. Все программисты начинают свой путь парсинга с этой библиотеки.  Вы можете aсинхронно скачивать страницы при помощи httpx и парсить данные, но не перегружайте чужой сайт. Тут перебор опасен.

Scrapy - это бесплатный фреймворк для веб-краулинга. Он сложнее библиотеки BeautifulSoup. Изначально задумывался для веб-скрейпинга, однако также может использоваться для извлечения информации с помощью API или как веб-краулер общего применения. Может асинхронно скачивать и парсить страницы. Zyte (ранее известная как Scrapinghub) - это платформа имеет облако для запуска спайдеров задач. Вы сможете запустить свою задачу в облаке и скачать результат через определённое время. Смотрите статью парсинг Scrapy в облаке Zyte Python. Если не хотите связываться с облачными решениями, то вы можете установить приложение для управления job'ами со спайдерами. Читайте на странице приложение ScrapydWeb для парсинга Python

Playwright - это библиотека для парсинга и тестирования. Хорошо если сайт подает вам данные на уже отрендеренные на страницы. Их легко скачивать и парсить. Как быть если изначально пустая страница наполняется текстом при помощи ajax или javascript? Тут вам поможет библиотека playwright. Playwright подождёт пока страница наполнится текстом и потом вы сможете скачать текст для дальнейшего парсинга. Библиотеку playwright часто используют для автоматического тестирования приложения.

Selenium - это библиотека для парсинга и тестирования. Она похожа на playwright. Она не такая стабильная и навороченная как playwright. При выборе между selenium и playwright выбирайте playwright.

Я поначалу думал что парсинг - легкое дело, но как только я столкнулся с капчами, то понял что не все так просто.

Комментарии

реклама