Лучшие примеры веб-скрейпинга — от Promptcloud
Опубликовано: 2019-08-19Данные стали ключевым компонентом стратегии роста каждой компании. Когда дело доходит до сбора данных, доступно множество источников. Однако сбор данных вручную затруднен по двум причинам: а) повышенная вероятность ошибок и б) длительный процесс. Лучший способ собрать данные — это сканировать данные из Интернета, короче говоря, веб-скрапинг. После того, как вы настроили систему для сканирования данных с определенных сайтов и использования очищенных данных в своем бизнес-процессе, вы можете продолжать использовать одну и ту же систему в течение многих лет. Сегодня мы обсудим некоторые из лучших примеров парсинга веб-страниц, с которыми мы столкнулись в PromptCloud.
Парсинг данных о недвижимости с помощью Python
Это одна из самых востребованных данных в мире. Большинство книг или курсов по машинному обучению начинаются с набора домов, их деталей и их цен, чтобы научить линейной регрессии, прежде чем переходить к сложным моделям ML. Некоторые из ведущих веб-сайтов по недвижимости в США содержат миллионы записей о домах как на рынке, так и вне его. Они даже содержат цены на аренду, оценки цен на дома через несколько лет и т. д. Мы собрали данные с ведущих сайтов, и вы можете проверить эти ссылки вместе с файлами JSON с несколькими точками данных.
Пример 1
[язык кода = «питон»] {
«description»: «327 101st St #1A, Brooklyn, NY — это дом с 3 спальнями, 3 ванными комнатами и площадью 1302 кв. фута, выкупленный заложенным имуществом. Войдите в Trulia, чтобы получать всю информацию о потере права выкупа.»,
«ссылка»: «https://www.trulia.com/p/ny/brooklyn/327-101st-st-1a-brooklyn-ny-11209–2180131215»,
"цена": {
«сумма»: «510000»,
«валюта»: «доллары США»
},
«широкое описание»: «Очень большая двухуровневая квартира с 1-м этажом, включающая готовую комнату отдыха, комнату развлечений и половину ванной комнаты. На втором уровне расположены 2 спальни, 2 ванные комнаты, гостиная/столовая и открытая площадка. Есть виды на мост Верразано. Посмотрите наши руководства по обращению взыскания»,
«Обзор»: [
«Кондо»,
«3 кровати»,
«3 бани»,
«Построен в 2006 году»,
«5 дней на Трулии»,
«1302 кв. футов»,
«392 доллара за квадратный фут»,
«143 просмотра»
] }
[/код]
Пример 2
[язык кода = «питон»] {
«Подробности_Общие»: {
«Количество комнат»: 4,
«Размер этажа (в квадратных футах)»: «1728»
},
"Адрес": {
«Улица»: «638 Грант Авеню»,
«Местность»: «Северный Болдуин»,
«Регион»: «NY»,
«Почтовый индекс»: «11510»
},
«Название»: «638 Grant Ave, North Baldwin, NY 11510 | МЛС № 3137924 | Зиллоу»,
«Detail_Short»: «638 Grant Ave, North baldwin, NY 11510-1332 — дом на одну семью, выставленный на продажу за 299 000 долларов. Дом площадью 1728 кв. Футов состоит из 4 спален и 2 ванных комнат. Найдите 31 фотографию дома по адресу 638 Grant Ave на Zillow. Просматривайте дополнительные сведения о недвижимости, историю продаж и данные Zestimate на Zillow. МЛС № 3137924»,
«Цена в $»: 299000,
«Изображение»: «https://photos.zillowstatic.com/p_h/ISzz1p7wk4ktye1000000000.jpg»
}
[/код]
Сбор данных об отелях с ведущих туристических порталов
Веб-сайты бронирования отелей содержат массу данных, таких как цены, отзывы, рейтинги, количество людей, которые оценили отель и многое другое. В другой статье мы показали, как сканировать данные крупнейшей компании по бронированию отзывов об отелях.
Используя библиотеку синтаксического анализа HTML под названием Beautiful Soup, мы смогли просканировать несколько точек данных. Используя небольшой фрагмент кода, приведенный ниже, вы можете перейти на веб-сайт, получить HTML-контент и преобразовать его в объект Beautiful Soup. Как только это будет сделано, синтаксический анализ объекта и поиск определенных точек данных в определенных тегах с определенными атрибутами станет простой задачей.
[code language="python"] warnings.simplefilter("ignore")#Для игнорирования ошибок SSL-сертификата
ctx = ssl.create_default_context()
ctx.check_hostname = Ложь
ctx.verify_mode = ssl.CERT_NONE
url=input("Введите URL отеля - ")
html = urllib.request.urlopen(url, context=ctx).read()
суп = BeautifulSoup(html, 'html.parser')
html = суп.prettify("utf-8")
hotel_json = {}
[/код]
Код для получения HTML-содержимого веб-страницы и преобразования его в объект Beautiful Soup.
Скрапинг данных социальных сетей
Одним из крупнейших источников пользовательских данных являются социальные сети. Если вы хотите проверить, нравится ли людям определенная песня, фильм или компания, данные социальных сетей могут помочь вам понять настроения пользователей, а также отслеживать общественную репутацию вашей компании. В PromptCloud мы собрали данные из Twitter️, Instagram️ и даже YouTube️. Точки данных во всех трех были разными. Например, из Instagram парсинг данных работает так.
[code language="python"] Пользователь: Ариана Гранде (@arianagrande)
Подписчики: 130,5 млн.
Далее: 1348
Сообщений: 3669
[/код]
Данные извлечены из учетных записей Instagram
Однако данные, которые мы взяли с YouTube️, были совершенно другими. Примером могут служить данные, извлеченные из известной песни, которая сама по себе привела к онлайн-испытанию.
[язык кода = «питон»]
{
«TITLE»: «Drake — In My Feelings (слова, аудио) «Kiki Do you love me»»,
"CHANNEL_NAME": "Особое единство",
«NUMBER_OF_VIEWS»: «278 121 686 просмотров»,
«НРАВИТСЯ»: «2 407 688»,
«НЕ НРАВИТСЯ»: «114 933»,
"NUMBER_OF_SUBSCRIPTIONS": "614 КБ",
«HASH_TAGS»: [
«#ВМоихЧувствах»,
«#Дрейк»,
«#Скорпион»
] }
[/код]

Данные взяты со страниц YouTube️
Следует отметить, что для Twitter нам нужна учетная запись разработчика, а также мы можем сканировать твиты для каждой учетной записи, только до подсчета последних 3240 твитов этого конкретного пользователя. Следовательно, вы можете видеть, что разные примеры парсинга веб-страниц могут иметь разные подходы, а также результаты.
Извлечение текстов песен с помощью Python с таких сайтов, как Genius️
Сокращение текстов песен — это то, чем люди занимались с незапамятных времен. Единственная разница в том, что теперь вы можете гораздо проще сканировать тексты песен за несколько секунд, используя фрагмент кода, вместо того, чтобы тратить часы или минуты на это вручную. Одним из таких примеров является эта статья, в которой мы показали, как сканировать тексты песен и другие связанные данные с популярного музыкального веб-сайта под названием Genius.
Поскольку веб-сайт содержит гораздо больше, чем просто тексты песен, мы также смогли зафиксировать такие данные, как комментарии, названия и дату выпуска.
Собрать биржевые данные Python с таких сайтов, как Yahoo️ Finance
Данные фондового рынка — это одно огромное хранилище данных, которое обычно анализируют люди, изучающие рынок и решающие, на что делать ставки. Как текущие, так и исторические данные имеют большую ценность. Одним из веб-сайтов, который можно довольно легко собрать для сбора информации об акциях различных компаний, является Yahoo Finance. Информация об акциях означает не только текущие цены на акции, поскольку мы смогли просканировать и многие другие точки данных, используя этот процесс.
Это данные, которые мы собрали для Apple️
[язык кода = «питон»] {
«НАСТОЯЩЕЕ ЗНАЧЕНИЕ»: «198,87»,
«НАСТОЯЩИЙ_РОСТ»: «-0,08 (-0,04%)»,
"ДРУГИЕ ДЕТАЛИ": {
«PREV_CLOSE»: «198,95»,
«ОТКРЫТО»: «199,20»,
«ПРЕДЛОЖЕНИЕ»: «198,91 x 800»,
«СПРОСИТЬ»: «198,99 x 1000»,
«TD_VOLUME»: «27 760 668»,
"AVERAGE_VOLUME_3MONTH": "28 641 896",
«MARKET_CAP»: «937.728B»,
«БЕТА_3Г»: «0,91»,
«PE_RATIO»: «16,41»,
«EPS_RATIO»: «12,12»,
"EARNINGS_DATE": [
«30 апреля 2019 г.»
],
«DIVIDEND_AND_YIELD»: «2,92 (1,50%)»,
"EX_DIVIDEND_DATE": "2019-02-08",
«ONE_YEAR_TARGET_PRICE»: «193,12»
}
}
[/код]
Соберите данные о продуктах, ценах и обзорах с веб-сайтов электронной коммерции.
Для получения информации о различных продуктах и их текущих рыночных ценах нет лучшего места для сбора данных, чем крупные компании электронной коммерции, такие как Amazon️. Хотя Amazon️ имеет разные макеты страниц для разных категорий и подкатегорий и даже в разных регионах мира, вы можете безопасно сканировать в Интернете небольшой объем данных по ограниченным категориям, как мы показали на этой странице, где мы извлекли данные о продуктах и информацию о ценах. .
Используя код, вы можете извлечь цену статьи и ее основные характеристики. Как только ссылки, которые вам нужно будет регулярно сканировать, будут готовы, вы можете запускать свой код с определенной частотой. Таким образом, вы сможете отслеживать изменения цен на этот товар и воспользоваться этим.
Очистить новостные веб-сайты Данные с таких веб-сайтов, как BBC, New York Times, Al Jazeera
Новостные агрегаторы сегодня пользуются повышенным спросом. Они представляют собой один из лучших примеров парсинга веб-страниц, который напрямую помогает пользователям повысить свою производительность. У людей больше нет времени просматривать газеты или даже целые веб-страницы. Так что же агрегаторы новостей делают по-другому?
- Агрегаторы новостей собирают новости и показывают только одну или две строчки с кратким объяснением новостной статьи. Если вы хотите узнать больше, вы можете щелкнуть ссылку, и они направят вас на настоящую новостную веб-страницу.
- Они объединяют новостные статьи крупных новостных агентств, таких как BBC️ и New York Times️, и часто это помогает предоставить вам более полную картину с более подробной информацией.
- Со временем приложение выясняет, что вам нравится и не нравится, и представляет вам новостные статьи в зависимости от вашего прошлого использования.
Видите ли, это некоторые из вещей, которые отличают агрегаторы новостей, и тем не менее, первым шагом во всех этих процессах является агрегирование данных, которое часто представляет собой просто сбор новостных статей с разных веб-сайтов.
Очистка данных задания
Рекрутинг — это одна из отраслей, которая, как и индустрия недвижимости, получила огромный импульс благодаря парсингу в Интернете и интернет-буму. В наши дни вы можете просматривать списки вакансий как с веб-сайтов компаний, так и с популярных интернет-досок вакансий, а затем использовать собранные данные для развития своего бизнеса. Независимо от того, являетесь ли вы рекрутинговой фирмой или консультантом, или вы сами управляете доской объявлений о вакансиях, сбор данных о вакансиях является обязательным. JobsPikr, одно из наших многочисленных решений для веб-скрейпинга, позволяет очень просто получать обновленные списки вакансий, чтобы управлять стратегическим планированием рабочей силы и эффективно вести бизнес. Это полностью автономный инструмент поиска вакансий, который может предоставить вам свежий список вакансий с использованием таких фильтров, как название, местоположение, должность и т. д.
Извлечение изображений и текстовых данных, необходимых для исследования
Огромное количество данных требуется в исследовательских проектах при работе над разными моделями машинного обучения. Даже для того, чтобы научить компьютер различать изображение собаки и кошки, вам потребуются тысячи изображений собак и кошек. Такие требования к данным решаются с помощью решений для веб-скрейпинга, и сегодня ученые сканируют изображения Google и другие источники изображений, чтобы получить изображения для своих проектов. Я использовал данные Twitter для сбора изображений, которые были загружены на сайт социальной сети во время наводнения. Я пытался отделить изображения, связанные с потопом, от не связанных.
Веб-скрейпинг для создания контента
Компаниям необходимо регулярно создавать высококачественный контент, чтобы повышать узнаваемость, обучать клиентов, создавать бренд и увеличивать продажи. Парсинг контента в Интернете помогает специалистам по маркетингу и рекламе получать лучшие идеи, проводить мозговые штурмы и придумывать новые способы привлечения клиентов и увеличения продаж.
Хотя мы объяснили некоторые примеры веб-скрапинга, возможности безграничны, и веб-скрапинг — это то, чем могут воспользоваться разные компании в разных сценариях. В конце концов, это помогает сделать процессы и решения более разумными, используя силу данных.
