Веб-скрапинг с помощью Python

  • Категория: Python
  • Проект: Курс по Python для продвинутых
  • Статья опубликована: 2022-06-09
  • Платформа: Python Практикум

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

Предположим, что запрос приведет к странице результатов, которая выглядит следующим образом: Результаты поиск для скрапинга на Python Как только мы узнаем, в каких элементах сайта хранятся необходимые данные, нам нужно придумать логику скрапинга, которая позволит нам получить всю нужную информацию из каждого объявления. Нам предстоит ответить на следующие вопросы:

  • Как получить одну точку данных для одного свойства (например данные из тега price в первом объявлении)?
  • Как получить все точки данных для одного свойства со всей страницы (например все теги price с одной страницы)?
  • Как получить все точки данных для одного свойства всех страниц с результатами (например все теги price со всех страниц с результатами)?
  • Как устранить несоответствие, когда данные могут быть разных типов (например, есть некоторые объявления, в которых в поле цены указана цена по запросу. В конечном итоге у нас будет столбец, состоящий из числовых и строковых значений, что в нашем случае не позволяет провести анализ)?
  • Как лучше извлечь сложную информацию (Например, предположим, что каждое объявление содержит информацию об общественном транспорте, например “0,5 мили до станции метро XY”)?