Альтернатива BeautifulSoup для парсинга
В некоторых проектах по науке о данных мне было необходимо импортировать данные с веб-страниц или HTML-страниц (например, рейтинги фильмов, отзывы клиентов...), такие задачи очень скучны и не позволяют изучать новое.
Использование парсинга веб-страниц является лучшим решением для избавления от этих скучных задач. Когда я начал заниматься парсингом веб-страниц, я всегда использовал BeautifulSoup, который является очень хорошим решением, но в некоторых случаях эта библиотека достигала своих пределов и становилась неудобной.
В этой статье я представлю вам альтернативу BeautifulSoup с примерами. Эта альтернатива - Selenium.
Самое важное преимущество Selenium заключается в том, что вы можете получить доступ к динамическому контенту. Другими словами, если у вас есть контент, генерируемый с помощью JavaScript, то Selenium будет решением для его парсинга. Кроме того, вы можете комбинировать использование Selenium и BeautifulSoup. В этом случае Selenium предоставит исходный код, а BeautifulSoup разберет и проанализирует HTML-код.
I. BeautifulSoup не может парсить динамический контент
a. Как использовать BeautifulSoup Если вы уже знакомы с BeautifulSoup, вы можете пропустить эту часть. Здесь я приведу пример того, как его использовать и какие ограничения я столкнулся.
Использование BeautifulSoup очень просто и позволяет нам импортировать данные из веб-страницы. Это хорошее решение для создания базы данных для моделей машинного обучения.
Но вопрос теперь в том, как получить правильный HTML-тег? В приведенном выше примере я использовал тег div с определенным именем класса. Лучшее решение для определения тега HTML и его имени - использовать инспектор веб-страницы.
В этом случае, например:
- Перейдите на веб-страницу https://paroles2chansons.lemonde.fr/paroles-eminem/paroles-bitch-please-ii.html
- Щелкните правой кнопкой мыши и выберите Inspect
Когда вы нажимаете Inspect, у вас появляется следующая страница:
Переходите к элементам HTML в верхнем правом углу, чтобы найти элементы, которые вы хотите спарсить, и тогда вы найдете имя тега и его класс.
Теперь вы можете использовать BeautifulSoup по своему усмотрению.
II. Как использовать Selenium
Чтобы узнать, как использовать Selenium, вы можете перейти к этой предыдущей статье. В ней подробно объясняется, как это работает. Перейдите сюда.
Вывод:
Итак, парсинг очень прост, когда вы используете правильный инструмент. Иногда использование только одного инструмента недостаточно, но комбинирование двух инструментов, о которых мы рассказали выше, может быть лучшим решением. Selenium для избавления от проблем, связанных с динамическим контентом, и BeautifulSoup для извлечения данных.
Вы новичок на Medium? Не стесняйтесь подписаться за менее чем $5 здесь, чтобы получить неограниченные возможности и улучшить свои навыки.