Парсер. Получение информации с сайтов | Статья в журнале «Юный ученый»

Отправьте статью сегодня! Журнал выйдет 11 мая, печатный экземпляр отправим 15 мая.

Опубликовать статью в журнале

Автор:

Научный руководитель:

Высокая практическая значимость Актуальная тема исследования

Рубрика: Информатика

Опубликовано в Юный учёный №3 (66) март 2023 г.

Дата публикации: 22.02.2023

Статья просмотрена: 56 раз

Библиографическое описание:

Захаренко, С. П. Парсер. Получение информации с сайтов / С. П. Захаренко, К. А. Гарамов. — Текст : непосредственный // Юный ученый. — 2023. — № 3 (66). — С. 97-100. — URL: https://moluch.ru/young/archive/66/3490/ (дата обращения: 30.04.2024).



С каждым годом в современном мире компьютерные технологии играют всё более важную роль. Компьютеры проникают во все сферы человеческой деятельности, от образования до создания новых материалов. И чтобы перевести технологию на следующий уровень эволюции, создаются новые программы, заменяющие старые и совершенствуются наиболее часто используемые программы. Компьютерные технологии продолжают внедряться в новые сферы жизни, приобретая все более разнообразные формы и способы использования. Благодаря интернету мы можем заказывать товары, оплачивать счета за коммунальные услуги, поддерживать связь с родственниками, не выходя из дома.

Актуальность этой работы вызвана тем, что в последние годы технологический прогресс привел к росту потока информации. Иногда трудно систематизировать огромное количество информации вручную, поэтому я хотел бы спросить — как я могу легко собрать определенную информацию? И мне не потребовалось много времени, чтобы найти ответ. Парсинг — это отрасль программирования, которая стремительно развивается. Однако я понимал, что научиться этому самостоятельно не легко, поэтому начал искать курсы, смотрел различные видео о том, как писать парсинг.

Целью этой работы является создание программы, которая может автоматически собирать данные о книгах с сайта и сохранять эту информацию в текстовом формате.

Задачи:

  1. Узнать новую информацию о парсинге.
  2. Создать свой парсер на языке программирования Python.
  3. Написать код, учитывая все нюансы.
  4. Сделать выводы после окончания работы.

Парсинг в XXI веке

Парсинг — процесс сбора и обработки данных с сайтов, находящихся в открытом доступе, специальными программами, которые автоматизируют этот процесс. Проще говоря- мы просто берём с помощью программы данные, которые сами могли бы скопировать вручную. Но, поскольку, лень — двигатель прогресса, проще сделать это скриптом. Сам парсер представляет собой скрипт, которым осуществляется сбор и обработка данной информации. Источником этих данных может служить HTML код, база данных, текст и др.

Как работает программа парсера :

  1. Поиск нужных источников по заданным данным.
  2. Извлечение нужной информации.
  3. Переделывание полученных данных в удобный нам формат.
  4. Сохранение информации в нужном виде.

Парсинг значительно расширяет диапазон деятельности людей. Он автоматизирует процесс анализа данных и снижает нагрузку на человека. Время и энергия могут быть перенаправлены на другие задачи. Это также ускоряет анализ больших объемов данных Это могут быть сотни интернет-магазинов, тысячи статей или огромные базы данных. Парсинг помогает разработчикам найти ошибки на сайте или в другом продукте данных, если он настроен на их поиск. Такими услугами пользуются интернет-маркетологи, веб-мастера и др.

Пример его использования: Сбор новостей. Для организованной подачи новостей новостные агентства используют парсеры. Они собирают всю обновлённую информацию и отправляют сотрудникам.

Создание парсера

Прежде всего надо выбрать сайт, с которого мы будем собирать информацию.

Я решил выбрать обычный сайт с фильмами The-cinema.in.

Начало создание кода

Загрузка библиотек

Я решил использовать самые популярные библиотеки для создания парсера: request и BeautifulSoup.

Далее нужно определиться с теми данными, которые мы хотим получить для каждого фильма. Я возьму такие данные, как название, ссылка на фильм, ссылка на постер фильма, жанр, год выпуска и описание. Занесём их в dataclass для более удобного хранения

2. Написание кода

После этого создадим основную функцию, на вход передаём адрес страницы нашего сайта, а на выходе получим список с объектами класса film.

Создадим список для хранения в нём наших объектов. Отправим get запрос нашему сайту, а полученный результат положим в переменную response. Затем определяем объект класса BeautifulSoup, 1-м аргументом мы передаём текст нашего ответа, а 2-м мы передаём строку- в каком формате наш текст передаётся. Дальше можно начать искать в объекте BeautifulSoup объекты HTML.

Для этого открываем наш сайт. Выбираем параметр table -—в нём есть вся интересующая нас информация.

Далее идём в наш проект и вызываем у объекта BeautifulSoup метод find.

В ходе проекта получим все объекты div, которые входят в table при помощи функции find_all. Итерируемся по каждому блоку cards. Далее ищем параметр h2 с названием класса heading.

Следующим шагом получим постер нашего фильма.

Получим основную информацию о фильме, она лежит в параметре strong.

Для получение нужных нам параметров создадим отдельную функцию, где будем перебирать параметры по очереди и брать только нужные нам.

Остался последний этап. Помещаем все наши полученные данные в dataclass и получившийся объект добавляем в конец списка.

Всё вместе это выглядит так:

Для работы скрипта установим точку запуска.

Бонусом напишем функцию, которая будет отдавать нам рандомный фильм из получившихся.

Импортируем библиотеку random.

Создадим функцию, которая будет принимать список фильмов, а возвращать только один. Выглядит это так:

Вывод всего выглядит так:

Заключение

Эта статья была посвящена знакомству с отдельной область программирования — парсингу. У этого вида программирования много подводных камней. Самое интересное, конечно же, парсинг в Python. Благодаря обучению я освоил некоторые основы для создания собственной системы парсинга, а затем мне удалось создать свой стабильный и работающий парсер. Конечно при создании было много проблем. Сложность алгоритма в том, что он не только работает, но и читается.

Подводя итог этой работы могу сказать, что работа успешно завершена и парсер развивался, развивается и будет развиваться.



Задать вопрос