Скопировать информацию с сайта в excel

В этом приеме описывается три способа получить данные, содержащиеся в веб-странице: вставить статическую копию информации; создать обновляемую ссылку на сайт; открыть страницу непосредственно в Excel.

Вставка статической информации

Один из способов получить данные из веб-страницы на лист — просто выделить текст в браузере, нажать Ctrl+C, чтобы скопировать его в буфер обмена, а затем вставить текст в таблицу. Результат может быть разным, в зависимости от того, какой браузер вы используете. Если это Internet Explorer, то вставленные данные будут, вероятно, очень похожи на оригинал — в комплекте с настройками форматирования, гиперссылками и графикой.

Если вы используете браузер, отличный от Internet Explorer, то, выбрав Главная ► Буфер обмена ► Вставить, можно вставить все, что вы скопировали с веб-страницы, в одну ячейку, а это, скорее всего, не то, чего вы хотите. Решение состоит в том, чтобы выбрать команду Главная ► Буфер обмена ► Вставить ► Специальная вставка, а затем пробовать различные варианты вставки.

Вставка обновляемой информации

Если вы хотите регулярно получать доступ к обновленным данным из веб-страницы, создайте веб-запрос. На рис. 176.1 показан сайт, который содержит курсы валют в таблице с тремя столбцами. Выполнив следующие шаги, можно создать веб-запрос, позволяющий извлекать эту информацию, а затем обновлять ее в любое время одним щелчком кнопкой мыши.

Рис. 176.1. Этот сайт содержит информацию, которая часто меняется

Рис. 176.1. Этот сайт содержит информацию, которая часто меняется

  1. Выберите Данные ► Получение внешних данных ► Из Интернета для открытия диалогового окна Создание веб-запроса.
  2. В поле Адрес введите URL сайта и нажмите кнопку Пуск. Для этого примера URL-адрес веб-страницы, показанной на рис. 176.1, будет таким: http://cbr.ru. Обратите внимание, что диалоговое окно Создание веб-запроса содержит мини-браузер (Internet Explorer). Вы можете переходить по ссылкам и посещать сайты, пока не найдете данные, которые вас заинтересуют. Когда веб-страница отображается в окне Создание веб-запроса, вы видите одну или несколько желтых стрелок, которые соответствуют различным элементам на веб-странице.
  3. Щелкните на желтой стрелке, и она превратится в зеленый флажок, который указывает, что данные этого элемента будут импортированы. Вы можете импортировать столько элементов, сколько нам нужно. Для этого
    примера я щелкну на стрелке рядом с таблицей курсов.
  4. Нажмите кнопку Импорт для открытия диалогового окна Импорт данных.
  5. В окне Импорт данных укажите место для импортированных данных. Это может быть ячейка в существующем или новом листе.
  6. Нажмите кнопку ОК, и Excel импортирует данные (рис. 176.2).

Рис. 176.2. Данные, импортированные из веб-страницы

Рис. 176.2. Данные, импортированные из веб-страницы

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

Открытие веб-страницы напрямую

Еще один способ получить данные веб-страницы на лист — открыть URL-адрес напрямую, с помощью команды Файл ► Открыть. Просто введите полный URL-адрес в поле Имя файла и нажмите кнопку Открыть. Результат будет отличаться в зависимости от того, какая разметка у веб-страницы, но в большинстве случаев он вас удовлетворит. Иногда таким способом извлекается довольно много посторонней информации.

Парсинг нетабличных данных с сайтов

Проблема с нетабличными данными

С загрузкой в Excel табличных данных из интернета проблем нет. Надстройка Power Query в Excel легко позволяет реализовать эту задачу буквально за секунды. Достаточно выбрать на вкладке Данные команду Из интернета (Data — From internet), вставить адрес нужной веб-страницы (например, ключевых показателей ЦБ) и нажать ОК:

Импорт данных с веб-страницы через Power Query

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

Выбираем таблицу на сайте для импорта

Дальше останется выбрать нужную таблицу методом тыка и загрузить её в Power Query для дальнейшей обработки (кнопка Преобразовать данные) или сразу на лист Excel (кнопка Загрузить).

Если с нужного вам сайта данные грузятся по вышеописанному сценарию — считайте, что вам повезло.

К сожалению, сплошь и рядом встречаются сайты, где при попытке такой загрузки Power Query «не видит» таблиц с нужными данными, т.е. в окне Навигатора попросту нет этих Table 0,1,2… или же среди них нет таблицы с нужной нам информацией. Причин для этого может быть несколько, но чаще всего это происходит потому, что веб-дизайнер при создании таблицы использовал в HTML-коде страницы не стандартную конструкцию с тегом <TABLE>, а её аналог — вложенные друг в друга теги-контейнеры <DIV>. Это весьма распространённая техника при вёрстке веб-сайтов, но, к сожалению, Power Query пока не умеет распознавать такую разметку и загружать такие данные в Excel.

Тем не менее, есть способ обойти это ограничение ;)

В качестве тренировки, давайте попробуем загрузить цены и описания товаров с маркетплейса Wildberries — например, книг из раздела Детективы:

Детективы на Wildberries

Загружаем HTML-код вместо веб-страницы

Сначала используем всё тот же подход — выбираем команду Из интернета на вкладке Данные (Data — From internet) и вводим адрес нужной нам страницы:

https://www.wildberries.ru/catalog/knigi/hudozhestvennaya-literatura/detektivy

После нажатия на ОК появится окно Навигатора, где мы уже не увидим никаких полезных таблиц, кроме непонятной Document:

Навигатор без таблиц

Дальше начинается самое интересное. Жмём на кнопку Преобразовать данные (Transform Data), чтобы всё-таки загрузить содержимое таблицы Document в редактор запросов Power Query. В открывшемся окне удаляем шаг Навигация (Navigation) красным крестом:

Удаляем ненужный шаг Навигация

… и затем щёлкаем по значку шестерёнки справа от шага Источник (Source), чтобы открыть его параметры:

Меняем тип файла

В выпадающием списке Открыть файл как (Open file as) вместо выбранной там по-умолчанию HTML-страницы выбираем Текстовый файл (Text file). Это заставит Power Query интерпретировать загружаемые данные не как веб-страницу, а как простой текст, т.е. Power Query не будет пытаться распознавать HTML-теги и их атрибуты, ссылки, картинки, таблицы, а просто обработает исходный код страницы как текст.

После нажатия на ОК мы этот HTML-код как раз и увидим (он может быть весьма объемным — не пугайтесь):

Исходный код страницы в Power Query

Ищем за что зацепиться

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

В случае с Wildberries, промотав этот код вниз до товаров, можно легко нащупать простую логику:

Изучаем исходный код

  • Строчки с ценами всегда содержат метку lower-price
  • Строчки с названием бренда — всегда с меткой brand-name c-text-sm
  • Название товара можно найти по метке goods-name c-text-sm

Иногда процесс поиска можно существенно упростить, если воспользоваться инструментами отладки кода, которые сейчас есть в любом современном браузере. Щёлкнув правой кнопкой мыши по любому элементу веб-страницы (например, цене или описанию товара) можно выбрать из контекстного меню команду Инспектировать (Inspect) и затем просматривать код в удобном окошке непосредственно рядом с содержимым сайта:

Инспектирование кода HTML на веб-странице

Фильтруем нужные данные

Теперь совершенно стандартным образом давайте отфильтруем в коде страницы нужные нам строки по обнаруженным меткам. Для этого выбираем в окне Power Query в фильтре [1] опцию Текстовые фильтры — Содержит (Text filters — Contains), переключаемся в режим Подробнее (Advanced) [2] и вводим наши критерии:

Фильтруем нужные строки

Добавление условий выполняется кнопкой со смешным названием Добавить предложение [3]. И не забудьте для всех условий выставить логическую связку Или (OR) вместо И (And) в выпадающих списках слева [4] — иначе фильтрация просто не сработает.

После нажатия на ОК на экране останутся только строки с нужной нам информацией:

Отобранные строки

Чистим мусор

Останется почистить всё это от мусора любым подходящим и удобным лично вам способом (их много). Например, так:

  1. Удалить заменой на пустоту начальный тег: <span class=»price»> через команду Главная — Замена значений (Home — Replace values).
  2. Разделить получившийся столбец по первому разделителю «>» слева командой Главная — Разделить столбец — По разделителю (Home — Split column — By delimiter) и затем ещё раз разделить получившийся столбец по первому вхождению разделителя «<» слева, чтобы отделить полезные данные от тегов:

    Отделяем данные от HTML-тегов

  3. Удалить лишние столбцы, а в оставшемся заменить стандартную HTML-конструкцию &quot; на нормальные кавычки.

В итоге получим наши данные в уже гораздо более презентабельном виде:

Зачищенные данные

Разбираем блоки по столбцам

Если присмотреться, то информация о каждом отдельном товаре в получившемся списке сгруппирована в блоки по три ячейки. Само-собой, нам было бы гораздо удобнее работать с этой таблицей, если бы эти блоки превратились в отдельные столбцы: цена, бренд (издательство) и наименование.

Выполнить такое преобразование можно очень легко — с помощью, буквально, одной строчки кода на встроенном в Power Query языке М. Для этого щёлкаем по кнопке fx в строке формул (если у вас её не видно, то включите её на вкладке Просмотр (View)) и вводим следующую конструкцию:

= Table.FromRows(List.Split(#»Замененное значение1″[Column1.2.1],3))

Здесь функция List.Split разбивает столбец с именем Column1.2.1 из нашей таблицы с предыдущего шага #»Замененное значение1″ на кусочки по 3 ячейки, а потом функция Table.FromRows конвертирует получившиеся вложенные списки обратно в таблицу — уже из трёх столбцов:

Разобранная на 3 столбца таблица

Ну, а дальше уже дело техники — настроить числовые форматы столбцов, переименовать их и разместить в нужном порядке. И выгрузить получившуюся красоту обратно на лист Excel командой Главная — Закрыть и загрузить (Home — Close & Load…)

Загруженные в Excel данные с сайта

Вот и все хитрости :)

Ссылки по теме

  • Импорт курса биткойна с сайта через Power Query
  • Парсинг текста регулярными выражениями (RegExp) в Power Query
  • Параметризация путей к данным в Power Query

Перейти к содержимому

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

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

Для автоматизации импорта данных в «Эксель» из интернета потребуется «Excel» версии 2013 и выше, а так же надстройка Power Query.

Последовательность настройки скачивания данных:

Порядок действий для импорта таблицы из интернет-сайта в таблицу Excel.

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

  • Шаг 5. Выбрать нужную таблицу из предложенного списка и нажать «Правка» или «Загрузить»Выбор таблицы для загрузки из интернета

Если нажать «Загрузить», таблица будет импортирована целиком. В режиме правки можно редактировать вид загружаемой таблицы, выбирать нужные столбцы и т.д.

Результат скачивания таблицы в Excel

Результат скачивания таблицы в Excel

Импорт данных из Интернета

Фотография устройства Surface Book

Начало работы с Power Query и переход на новый уровень с навыками преобразования данных. Сначала давайте импортируем некоторые данные.

Примечание      Хотя видео в этом обучающем видеоролике основаны на Excel для Microsoft 365, мы добавили инструкции в качестве меток видео, если вы используете Excel 2016. 

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

  2. На листе «Импорт данных из Интернета» скопируйте URL-адрес , который является страницей Википедии, на которой можно упланировать положение «Чашка мира ПО».

  3. Выберите «Данные>«& «>из Интернета».

  4. Нажмите CTRL+V, чтобы вировать URL-адрес в текстовое поле, а затем нажмите кнопку «ОК».

  5. В области «Навигатор» в области «Параметрыотображения» выберите таблицу «Результаты».

    Power Query вы сможете просмотреть его в области «Представление таблицы» справа.

  6. Выберите «Загрузить». Power Query преобразует данные и загрузит их в таблицу Excel.

  7. Дважды щелкните название ямы листа и переименуем его в «World Cup Results» (Результаты всемирной чашки).


Совет.

   Чтобы получить обновления данных для этой всемирной игры, выберите таблицу, а затем выберите «Обновить запрос».

Нужна дополнительная помощь?


Download Article


Download Article

  • Windows
  • |

  • Mac

If you need to import data from the web into your Microsoft Excel spreadsheet, you can use the import feature of Power Query on both Windows and macOS. While the steps are straightforward in Windows, Mac users technically don’t have the option to import web data. Fortunately, we’ve found a simple workaround for Mac using Microsoft Word! This wikiHow will show you import data from a remote URL into Excel in Windows and macOS.

  1. Image titled Import Web Data Into Excel on PC or Mac Step 2

    1

    Click an empty cell in the spreadsheet. Choose the cell where you’d like the pasted data to begin.

  2. Image titled Import Web Data Into Excel on PC or Mac Step 3

    2

    Click the Data tab. This tab is located between Formulas and Review at the top of the app window.

    Advertisement

  3. Image titled Import Web Data Into Excel on PC or Mac Step 4

    3

    Click From Web on the Data ribbon. You will see this in the upper-left corner of Excel on the «Get & Transform Data» panel.[1]
    This option is in the upper-left corner of your Data ribbon. This opens the «From Web» window.

    • If you don’t see this option, click the Get Data drop-down menu at the top-left, select From Other Sources, and then select From Web.
  4. Image titled Import Web Data Into Excel on PC or Mac Step 5

    4

    Enter the website URL and click OK. The address you enter or paste into the typing area should be the URL that contains the data you want to import.

  5. Image titled Import Web Data Into Excel on PC or Mac Step 6

    5

    Click Connect to access the site anonymously. If the data is on a public website, this will display the tables in Table View.[2]
    If the site requires a login:

    • If you usually sign in to this page by entering a username and password into the site’s own login/sign-in fields, select Basic, enter your login details, and click Connect.
    • If you need to log in through a work or school account, select Windows to use a Windows network login, or select Organizational account and then Sign In to log in through your organization’s server.
    • If you have an API key, select Web API, enter the key, and click Connect.
  6. Image titled Import Web Data Into Excel on PC or Mac Step 7

    6

    Select a table. The list of tables appears in the left panel of the Navigator window. When you select a table, the data will appear in the panel on the right.

    • If you’re not sure which table you need, click the Web View tab at the top of the right panel to display the website, and then click the table to select it.
    • To import more than one table, check the box next to «Select multiple items» near the top-left.
  7. Image titled Import Web Data Into Excel on PC or Mac Step 8

    7

    Click the Load button. This will import the selected table data into your Excel spreadsheet.

  8. Advertisement

  1. Image titled Import Web Data Into Excel on PC or Mac Step 8

    1

    Open Microsoft Word to a blank document. Because Excel for macOS, even the one that comes with Office 365, doesn’t have an option to import data from the web, you’ll need to do a little workaround that involves creating a query in Microsoft Word first.[3]

  2. Image titled Import Web Data Into Excel on PC or Mac Step 9

    2

    Type or paste the URL you want to import from. It’s important that the URL be in plain text. If you copied the URL from somewhere else, click the small icon that appears after pasting and select Keep Text Only.

  3. Image titled Import Web Data Into Excel on PC or Mac Step 10

    3

    Click the File menu and choose Save as. Now you’ll need to save the file in the TXT format in a particular location.

  4. Image titled Import Web Data Into Excel on PC or Mac Step 11

    4

    Select the Queries folder. Before you save the file, you’ll need to navigate to Applications > Microsoft Office 365 > Office > Queries, as that’s where you’ll need to save the file.

    • If you’re using a different version of Office, you’ll see your version instead.
  5. Image titled Import Web Data Into Excel on PC or Mac Step 12

    5

    Save the file as a plain text file. Enter a name for your file and choose the .txt file extension. You’ll see a warning message in a window called «File Conversion.»

  6. Image titled Import Web Data Into Excel on PC or Mac Step 13

    6

    Select your preferences and click OK. These two options are very important:

    • Under «Text encoding,» select MS-DOS.
    • Under «Options,» check the box next to «Insert line breaks.» The other options should be blank.
  7. Image titled Import Web Data Into Excel on PC or Mac Step 14

    7

    Open Finder and navigate to the Queries folder. Again, it’s at Applications > Microsoft Office 365 > Office > Queries.

  8. Image titled Import Web Data Into Excel on PC or Mac Step 15

    8

    Change the file extension from .txt to .iqy.

    • Right-click the file you created and select Get Info.
    • In the file name, replace .txt with .iqy.
    • When prompted, confirm that you want to change the file extension.
  9. Image titled Import Web Data Into Excel on PC or Mac Step 16

    9

    Open your spreadsheet in Excel. Now that you have a query to work with, you can import it into Excel.

  10. Image titled Import Web Data Into Excel on PC or Mac Step 17

    10

    Click the Data menu. It’s in the menu bar at the top of the screen.

  11. Image titled Import Web Data Into Excel on PC or Mac Step 18

    11

    Select the Get external data menu. Additional options will expand.

  12. Image titled Import Web Data Into Excel on PC or Mac Step 19

    12

    Click Run web query. This will open a Finder window to the Queries folder, which is where you saved your query.

  13. Image titled Import Web Data Into Excel on PC or Mac Step 20

    13

    Select your IQY file and click Get Data. This will import the data into your Excel file.

  14. Advertisement

Ask a Question

200 characters left

Include your email address to get a message when this question is answered.

Submit

Advertisement

Thanks for submitting a tip for review!

References

About This Article

Article SummaryX

You can easily import a data table from the web into your Excel file using Excel’s «From Web» import tool. To do this, open your Excel file, and then click the cell where you’d like the imported data to appear. On the Data tab, click the From Web button on the left side of the toolbar to open the «From Web» window. Type or enter the URL that contains your data and click OK. If the data is on a public website, click Connect to open it. If it requires a login, choose the option in the left panel that describes how you typically sign in, enter your login details, and click Connect. If you know the name of the table you want to import, click it in the left panel. If you’d rather select it from the website, click the Web View tab above the right panel to load the site, and then click the desired table. You can import more than one table at once by checking the «Select multiple items» box and clicking additional tables. When you’re finished, click Load to import the selected data to your spreadsheet.

Did this summary help you?

Thanks to all authors for creating a page that has been read 72,509 times.

Is this article up to date?

Понравилась статья? Поделить с друзьями:
  • Скопировал даты в excel
  • Скопировать строку если в ней есть слово excel
  • Скопировать имя файла в word
  • Сконвертировать пдф в excel
  • Скопировать столбец в другую таблицу формула с в excel