Как извлечь данные из нескольких веб-страниц с помощью Power Query

  1. Данные для извлечения
  2. Создать функцию запроса
  3. Получить список URL
  4. Используйте функцию запроса в нашем списке URL

Power Query (или Get & Transform начиная с Excel 2016) - отличный инструмент для создания запросов для получения данных из Интернета. В течение нескольких минут вы можете создать запрос, который будет извлекать данные с веб-страницы и преобразовывать их в нужный формат. Это отлично подходит для получения данных с веб-страницы, которая часто обновляется, так как вы сможете легко обновить свой запрос, чтобы получить новые данные.

Помните, что если вы не используете Excel 2016 или более позднюю версию, вам необходимо установить надстройку для запроса мощности ,

Данные для извлечения

В этом посте мы рассмотрим, как мы можем извлечь данные из серии похожих страниц. Я большой поклонник ММА, поэтому в качестве примера мы рассмотрим получение всех результатов UFC из Википедии.

Если вы посетите страницу Википедии для событий UFC, то есть таблица Прошедшие события , Если вы нажмете на одно из событий вы увидите таблицу результатов. Если вы посмотрите на еще несколько событий, вы заметите, что структура точно такая же, и у них у всех есть таблица результатов. Это данные, которые я хочу получить, но из всех 400+ событий, перечисленных в разделе прошлых событий. Если бы количество страниц было больше, вам лучше использовать другой инструмент, такой как Python, но мы собираемся использовать Power Query.

Создать функцию запроса

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

Перейдите на вкладку « Данные » на ленте и нажмите кнопку « Из Интернета» в разделе « Получить и преобразовать ». Если вы работаете с Excel 2013 или более ранней версии с помощью надстройки, это можно найти на вкладке Power Query .

Введите URL и нажмите кнопку ОК .

Excel соединится со страницей, и откроется диалоговое окно Navigator .

  1. Будет отображен список таблиц, доступных для импорта с веб-страницы. Выберите таблицу результатов .
  2. Появится предварительный просмотр выбранных нами данных.
  3. Нажмите кнопку Изменить . Откроется окно редактора запросов .

Откроется окно редактора запросов

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

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

Теперь мы можем отредактировать наш запрос, чтобы превратить его в функцию запроса. Перейдите на вкладку « Вид » и нажмите кнопку « Расширенный редактор» . Это позволит нам редактировать код, созданный в Excel, для извлечения данных из этого URL.

Это позволит нам редактировать код, созданный в Excel, для извлечения данных из этого URL

Нам нужно будет отредактировать этот код следующим образом. Части, которые необходимо добавить / изменить, выделены красным .

let GetResults = (URL) => let Source = Web.Page (Web.Contents (URL)), Data1 = Source {1} [Данные], # «Измененный тип» = Table.TransformColumnTypes (Data1, {{«Header») , введите текст}, {"Весовой класс", введите текст}, {"", введите текст}, {"2", введите текст}, {"3", введите текст}, {"Метод", введите текст}, {"Round", Int64.Type}, {"Time", type time}, {"Notes", type text}}) в # "Changed Type" в GetResults

Нажмите кнопку Готово , когда закончите редактирование запроса. Это превратит наш запрос в параметризованный запрос с URL-адресом в качестве входных данных.

Это превратит наш запрос в параметризованный запрос с URL-адресом в качестве входных данных

Вы должны увидеть, что предварительный просмотр данных в редакторе запросов был заменен вводом параметров . Нам не нужно ничего вводить здесь, и мы можем просто оставить это пустым.

Нам не нужно ничего вводить здесь, и мы можем просто оставить это пустым

Затем мы можем сохранить функцию запроса, перейдя на вкладку « Главная » и нажав кнопку « Закрыть и загрузить» .

Затем мы можем сохранить функцию запроса, перейдя на вкладку « Главная » и нажав кнопку « Закрыть и загрузить»

Теперь вы должны увидеть функцию запроса fGetWikiResults в окне Queries & Connections .

Получить список URL

Теперь нам нужно получить список URL-адресов страниц с событиями из Прошедшие события стр. Мы могли бы использовать мощный запрос для импорта этой таблицы, но это просто подтянет текст, а не основную гиперссылку. Лучший способ получить список URL-адресов - это проанализировать исходный код со страницы. Вы можете просмотреть исходный код любой веб-страницы, нажав Ctrl + U в браузере Chrome.

Вам нужно быть достаточно знакомым с HTML, чтобы найти то, что вы ищете. Первые несколько строк HTML, которые нас интересуют, выглядят так. Я выделил гиперссылки, в которых мы заинтересованы, чтобы продемонстрировать, где они находятся. Вы можете разобрать их в другой книге Excel, используя некоторые фильтры и базовую формулу текста. Нам также нужно будет объединить начальную часть адреса (т.е. https://en.wikipedia.org / wiki / UFC_217).

<tr> <td> 416 </ td> <td> <a href=" /wiki/UFC_217 "title="UFC 217"> UFC 217: Биспинг против Сен-Пьера </a> </ td> <td > <span class = "sortkey" style = "display: none; speak: none"> 000000002017-11-04-0000 </ span> <span style = "white-space: nowrap"> 4 ноября 2017 г. </ span > </ td> <td> <a href="/wiki/Madison_Square_Garden" title="Madison Square Garden"> Сад Мэдисон Сквер </a> </ td> <td> <a href = "/ wiki / New_York_City, _New_York "class =" mw-redirect "title =" Нью-Йорк, Нью-Йорк "> Нью-Йорк, Нью-Йорк </a>, США </ td> <td> <span style =" display: none "class = "sortkey"> 7004182010000000000 </ span> 18,201 <sup id = "cite_ref-21" class = "reference"> <a href="#cite_note-21"> [21] </a> </ sup> </ td > </ tr> <tr> <td> 415 </ td> <td> <a href=" /wiki/UFC_Fight_Night:_Brunson_vs._Machida "title="UFC Fight Night: Брансон против Machida"> UFC Fight Night: Брансон против Мачиды </a> </ td> <td> <span class = "sortkey" style = "display: none; speak: none"> 000000002017-10-28-0000 </ span> <span style = " пробел: nowrap "> 28 октября 2017 г. </ span> </ td> <td> <a href =" / wiki / Gin% C3% A1sio_ do_Ibirapuera "title =" Ginásio do Ibirapuera "> Ginásio do Ibirapuera </a> </ td> <td> <a href="/wiki/S%C3%A3o_Paulo" title="São Paulo"> Сан-Паулу </ a >, Бразилия </ td> <td> <span style = "display: none" class = "sortkey"> 7004102650000000000 </ span> 10 265 <sup id = "cite_ref-22" class = "reference"> <a href = "# cite_note-22"> [22] </a> </ sup> </ td> </ tr>

Получив полный список URL-адресов событий, мы можем превратить этот список в таблицу Excel с помощью сочетания клавиш Ctrl + T и назвать его URL_List .

Используйте функцию запроса в нашем списке URL

Теперь мы готовы использовать функцию запроса fGetWikiResults в нашем списке URL-адресов событий.

Создайте запрос на основе таблицы URL_List . Выберите ячейку в таблице, перейдите на вкладку « Данные » на ленте и нажмите кнопку « Из таблицы / диапазона» в разделе « Получить и преобразовать ».

Теперь мы добавим пользовательский столбец в запрос. Здесь мы будем вызывать нашу функцию запроса fGetWikiResults . Перейдите на вкладку « Добавить столбец » и нажмите кнопку « Пользовательский столбец» .

Добавьте имя нового столбца в пользовательский столбец, а затем добавьте формулу пользовательского столбца fGetWikiResults ([URL]).

Новый пользовательский столбец будет содержать таблицу для каждого URL, и нам нужно будет расширить эту таблицу, чтобы увидеть результаты. Щелкните левой кнопкой мыши на значке фильтра столбца « Результаты» в заголовке столбца. Выберите Expand из меню и нажмите кнопку ОК .

Некоторые из заголовков столбцов отсутствовали в наших исходных данных, поэтому мы можем их переименовать. Дважды щелкните левой кнопкой мыши на заголовке столбца, чтобы переименовать его.

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

Похожие

Как мне создать заявку на онлайн поддержку?
... запроса поддержки. Сделайте запрос поддержки на веб-сайте, и менеджер по работе с клиентами Dell позаботится об этом в течение одного рабочего дня. Вы также можете сэкономить время, выполнив диагностику оборудования на своем ПК Dell и отправив результаты в сервисный запрос в режиме онлайн, что поможет менеджеру учетной записи Dell ускорить диагностику. С помощью интерактивного запроса поддержки вы можете отслеживать все действия по запросу поддержки и общаться с Dell на странице истории поддержки.
Как зациклить видео YouTube и плейлисты на Chromecast
... список воспроизведения, Chromecast не будет воспроизводить его снова с самого начала. На YouTube нет настроек, с которыми вы можете связываться, чтобы зацикливать видео и плейлисты YouTube в Chromecast. Хорошей новостью является то, что есть работа вокруг. У этого есть одно ограничение; это работает только с вашего рабочего стола. Вот что вам нужно сделать. Подготовьте видео и плейлист Единственный способ зациклить видео - добавить его в список воспроизведения. Эта работа
Как вы находите и удаляете шпионское ПО с вашего компьютера?
Существуют вирусы, которые копируют то, что вы печатаете на клавиатуре компьютера, записывают звук и изображение, записанные вашей веб-камерой, даже когда она выключена. Это так называемый, шпионское , В этой статье мы опишем, как распознать и удалить их и как избежать заражения. Шпионское ПО - это тип компьютерного вируса, который вместо удаления файлов или показа рекламы занимается
Все о нашем креативном боссе Себастьян Олмия
Себастьян Олма, один из самых талантливых поваров молодого поколения. Победитель второго выпуска программы TOP CHEF, самого популярного кулинарного шоу в Польше. Он приобрел опыт работы в лондонских ресторанах, где работал с крупнейшими поварами кухни мира - в том числе Гордон Рамсей или Томем Айкенс. БИО СЕБАСТИАН Креативный руководитель ресторана Бельведер. Победитель второго выпуска программы TOP CHEF, самого
Безналичный расчет - как безопасно платить в интернете
Вот несколько идей о том, как легко, быстро и прежде всего оплачивать покупки, сделанные онлайн. Если вы покупаете что-то в интернет-магазине, но по разным причинам предпочитаете платить наличными при получении посылки, это как если бы вы писали электронное письмо, а затем распечатывали его и отправляли обычной почтой. Также прочитайте: Начал мобильную оплату по ссылке Многие
Осторожно, есть новый вирус, который путешествует по скайпу
Новый
Как использовать Chrome Remote Desktop в качестве альтернативы TeamViewer
TeamViewer - это популярный инструмент для удаленного подключения к компьютерам. Это так же просто, как установить программное обеспечение (или использовать переносную версию без установки), поделиться идентификатором и паролем с экрана TeamViewer, с которым вы хотите поделиться этим экраном. Для удаленных подключений больше не требуется сложной конфигурации. Одна вещь, которая заставляет нас искать альтернативу TeamViewer, это то, что она не бесплатна. TeamViewer бесплатен только для личного
Как отобразить панель управления в меню WinX Windows 10
Windows 10 v1703 удалила запись панели управления из меню WinX . Теперь вы видите элемент, который открывает настройки . Меню WinX - это меню, которое появляется при нажатии кнопки «Пуск». Microsoft хочет, чтобы пользователи отошли от Панели управления, и поэтому постепенно перемещает все настройки из нее в Настройки. Но если вы хотите отобразить или показать панель управления вместе с настройками, вот как вы это делаете. Мы уже видели,
Как сделать интернет-рекламу в России на Яндекс.Директе
С января 2016 года TSW является сертифицированным агентством Яндекс, а также пятью другими по всей Италии. Яндекс.Директ - это рекламная система, основанная на аукционе, которая позволяет вам создавать кампании в сети Search and Display, предлагая брендам, связанным с платформой, огромную возможность продвигать продукты и услуги в Российский рынок в восстановлении , Как сертифицированное агентство
Как выбрать пол для маленькой квартиры?
Небольшая территория может быть проблемой - часто нам приходится внедрять нестандартные идеи и решения для квартиры, что позволяет максимально эффективно использовать пространство. А как насчет пола? Как вы заканчиваете нашу розетку, чтобы мы чувствовали себя комфортно и комфортно в ней? Ниже, в сотрудничестве с брендом SWISS KRONO, мы представляем способы отделки небольшой квартиры. Вопреки внешнему виду, с помощью
А как насчет кухонной стены вместо плитки?
Когда мы настраиваем кухню, на ум сразу приходят керамические плитки. Обычно мы задаемся вопросом, как украсить стену на кухне, особенно ту, что примыкает к столешнице, плите и раковине. Мы хотим получить красивый внешний вид, а также поверхность, устойчивую к брызгам и грязи. И здесь часто начинается проблема, потому что положение керамической плитки является дорогостоящим делом. Красивые и модные плитки недешевы, и за это нужно платить

Комментарии

Как пользователи находят ваш сайт, как они перемещаются по нему, как долго они остаются и куда они идут?
Как пользователи находят ваш сайт, как они перемещаются по нему, как долго они остаются и куда они идут? Таким образом, Google Analytics, по сути, является инструментом обработки пользовательских данных. Что такое GDPR и как это влияет на мой сайт? Общее положение о защите данных Это закон ЕС, который устанавливает строгие требования к обработке данных граждан ЕС. Он вступил в силу 25 мая 2018 года
Описание меню - как воздействовать на чувства с помощью текста?
Описание меню - как воздействовать на чувства с помощью текста? Одним из наиболее важных правил для создания описания меню является правильное действие на чувства нашего клиента. В его воображении должен появиться идеальный образ нашего блюда - идеализированный и обеспечивающий удивительный вкус и аромат. С помощью соответствующих прилагательных мы представим его вкус, форму, запах, а в случае, например, хлеба - даже тактильные ощущения. Давайте использовать синестезию - тенденцию,
Играть NEXT - как получить сим-карту?
Играть NEXT - как получить сим-карту? Создание аккаунта, выбор номера, регистрация и подключение платежной карты возможно с уровня мобильного приложения. Единственный шаг, который требуется во всем процессе контакта с внешним миром, - это разовое снятие SIM-карты. У клиентов есть выбор, как забрать карту. Одним из способов является доставка курьером - время выполнения такого заказа составляет от 2 до 7 дней. Второй - это независимое посещение пункта, где вы можете сразу
Таким образом, вы можете задаться вопросом о нескольких вещах, таких как проблема безопасности при подключении к сетям Wi-Fi?
Таким образом, вы можете задаться вопросом о нескольких вещах, таких как проблема безопасности при подключении к сетям Wi-Fi? Как, черт возьми, вы можете защитить свой трафик в общественных сетях? И является ли настройка VPN-маршрутизатора правильным решением? Это все хорошие вопросы, которые я проясню, предоставляя вам инструменты, необходимые для защиты ваших компьютеров и смартфонов в пути. Что такое проблема безопасности с сетями Wi-Fi? Злоумышленники могут - и все
Как ты думаешь, как Антек поделится фотографией Юлки на «день рождения», чтобы снова заглушить слухи?
Как ты думаешь, как Антек поделится фотографией Юлки на «день рождения», чтобы снова заглушить слухи?
Как мозг создает космические карты - Как не потеряться?
Как мозг создает космические карты - Как не потеряться? - доктор Рафал Чайковски (IBD PAN) 17.45-18.45: Сколько мы можем прочитать из дюжины или около того движущихся точек? Биологическое движение, социальные взаимодействия и шизофрения - Лукаш Окрушек, MA (UW, KCL) {pullquote} Во время обучения в магистратуре я имел удовольствие быть частью великой команды, создавшей кружок нейробиологии, который
Как настроить цвет на мониторе и распечатать как можно больше?
Как настроить цвет на мониторе и распечатать как можно больше? Изображение на мониторе может быть немного ближе к изображению на распечатке, если правильно откалибровать профессиональный монитор, но его трудно получить среднестатистическому пользователю, даже невозможно. На восприятие цветов также влияют: освещение, время суток, цвет стен в комнате, тип ламп - как для распечатки, так и для монитора. Изображение на мониторе никогда не будет выглядеть так же, как распечатка.
Как создать замену для такого пробного периода для клиента и дать ему представление о преимуществах услуги?
Как создать замену для такого пробного периода для клиента и дать ему представление о преимуществах услуги? Создание имиджа как способ создания конкурентного преимущества Если в случае SaaS услуга будет связана с брендом, в других случаях поставщик услуг будет играть значительную роль. Наше возможное удовлетворение или неудовлетворенность будут выражены по отношению к человеку. С другой стороны, тот, кто обладает отличительным характером, отзывчив и компетентен в одно
Как мне создать запрос на поддержку онлайн?
Как мне создать запрос на поддержку онлайн? , Видеоруководство: как открыть онлайн-заявку на поддержку на домашней странице Dell Примечание. Для некоторых продуктов Dell можно отправить онлайн-запрос на поддержку. Если запрос онлайн поддержки не представляется возможным, пожалуйста, свяжитесь с Техническая поддержка Dell через альтернативный метод. Как мне создать запрос на поддержку
Как зарегистрироваться и создать учетную запись GDAX?
Как зарегистрироваться и создать учетную запись GDAX? Пользователи должны выполнить различные действия, чтобы зарегистрироваться и создать свою учетную запись на этой платформе обмена. Прежде всего, пользователи должны посетить www.gdax.com а затем они должны выбрать значок «создать учетную запись» на веб-сайте. Они должны нажать «создать учетную запись» после полного заполнения формы регистрации с их правильными
Как создать хорошее описание в описании метатега?
Как создать хорошее описание в описании метатега? Основные - помните, что это не бессмысленная смесь ключевых фраз. Описание должно ссылаться на содержимое данной подстраницы, Убедительно - сила словесного убеждения огромна, поэтому убедите пользователей Интернета, что стоит посетить ваш сайт, Не слишком долго - количество символов не должно превышать 155 . Заключение большего количества слов

А как насчет пола?
Как вы заканчиваете нашу розетку, чтобы мы чувствовали себя комфортно и комфортно в ней?
Как пользователи находят ваш сайт, как они перемещаются по нему, как долго они остаются и куда они идут?
Что такое GDPR и как это влияет на мой сайт?
Описание меню - как воздействовать на чувства с помощью текста?
Играть NEXT - как получить сим-карту?
Таким образом, вы можете задаться вопросом о нескольких вещах, таких как проблема безопасности при подключении к сетям Wi-Fi?
Как, черт возьми, вы можете защитить свой трафик в общественных сетях?
И является ли настройка VPN-маршрутизатора правильным решением?
Что такое проблема безопасности с сетями Wi-Fi?