Auditportal.ru

Аудит Портал
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как извлечь доменное имя из URL-адреса в Excel?

Excel. Получение информации с веб-страницы

%d1%80%d0%b8%d1%81-1-%d0%b8%d1%81%d0%bf%d0%be%d0%bb%d1%8c%d0%b7%d0%be%d0%b2%d0%b0%d0%bd%d0%b8%d0%b5-%d0%b4%d0%b8%d0%b0%d0%bb%d0%be%d0%b3%d0%be%d0%b2%d0%be%d0%b3%d0%be-%d0%be%d0%ba%d0%bd%d0%b0-%d1%81

Рисунок 1. Использование диалогового окна Create Web Request для указания импортируемых данных; чтобы увеличить изображение, щелкните на нем правой кнопкой мыши и выберите Open image in a new tab (Открыть изображение в новой вкладке)

Скачать записку в формате Word или pdf, примеры в формате Excel

Термин «веб-запрос» немного неточен, так как получить данные можно не только из Интернета. Также можно сделать веб-запрос к HTML-файлу, расположенному на локальном компьютере, или к файлу, хранящемуся на сетевом сервере или веб-сервере в Интернете. Чтобы получить информацию с веб-сервера, необходимо подключиться к Интернету. После получения данных подключение к Интернету больше не требуется (если, конечно, вы не собираетесь обновлять данные).

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

  1. Выполните команду Data -> Retrieve External Data -> From Internet, чтобы открыть диалоговое окно Create Web Request.
  2. Введите URL-адрес сайта в поле Address и нажмите Start. В нашем примере (рис. 1) имеется веб-сайт, расположенный по адресу https://news.yandex.ru/quotes/1.html. Примечание: В диалоговом окне Create WebQuery открывается браузер (Internet Explorer). Здесь вы можете нажимать на ссылки и просматривать сайт, пока не найдете интересующие вас данные. Когда веб-страница появится в окне Create WebQuery, вы увидите один или несколько желтых квадратов со стрелками, которые соответствуют таблицам на странице. Еще один из этих квадратов будет соответствовать всей странице.
  3. Если нажать на желтый квадрат со стрелкой, он превратится в зеленую галочку, указывающую на то, что данные из этой таблицы будут импортированы. К сожалению, вы не можете выбрать таблицу с курсами валют, поэтому единственным вариантом является импорт всей страницы.
  4. Нажмите Options (Параметры), чтобы выбрать формат импорта данных и другие настройки.
  5. Нажмите Импорт, чтобы отобразить диалоговое окно Импорт данных. Укажите местоположение для импортированной информации. Это может быть ячейка на текущем или новом листе. Нажмите Свойства, если вы хотите изменить параметры импорта по умолчанию.
  6. Нажмите OK, и Excel импортирует данные.
Читайте так же:
Как использовать проверку данных, чтобы разрешить ввод только номера SSN в Excel?

Результат импорта (рис. 2) — не совсем то, что мы хотели. Нас интересовала только таблица валют, а веб-запрос вернул всю страницу. Обычно импортируемые данные находятся в веб-запросе. С помощью контекстного меню щелкните правой кнопкой мыши на любой ячейке в импортируемом диапазоне и выберите Обновить.

%d1%80%d0%b8%d1%81-2-%d0%b8%d0%bd%d1%84%d0%be%d1%80%d0%bc%d0%b0%d1%86%d0%b8%d1%8f-%d0%bf%d0%be%d0%bb%d1%83%d1%87%d0%b5%d0%bd%d0%bd%d0%b0%d1%8f-%d1%81-%d0%bf%d0%be%d0%bc%d0%be%d1%89%d1%8c%d1%8e

Рисунок 2: Информация из интернет-запроса

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

Excel включает встроенный веб-запрос, позволяющий находить таблицы в HTML-документе (обозначенном тегом HTML) с помощью встроенных возможностей. Каскадные таблицы стилей (CSS) все чаще используются веб-дизайнерами для отображения табличных данных. Из-за того, что Excel не распознает такие таблицы и не отображает желтый квадрат со стрелкой, вы не сможете получить таблицу — возможно, вам придется получить весь документ, а затем скрыть (или удалить) все данные, кроме тех, которые вас интересуют.

Другой способ отображения данных с веб-страницы в электронной таблице — открыть URL непосредственно в Excel с помощью команды Файл -> Открыть. Просто введите полный адрес URL в поле Имя файла и нажмите кнопку Открыть (Рисунок 2). Результаты могут отличаться в зависимости от макета веб-страницы. Результат обычно удовлетворительный. Время от времени вы можете получать дополнительную информацию. Примечание: эти данные не обновляются. Если информация на веб-странице изменилась, закройте книгу и снова используйте команду Файл -> Открыть. Я не смог этого сделать. Excel сначала написал, что открыл страницу в защищенном виде, долго работал, а потом выдал сообщение, что книга повреждена и не может быть открыта(((

[1] По книге Джона Уокенбаха. Excel 2013. Советы и рекомендации. — СПб: Питер, 2014. — С. 194-196.

Читайте так же:
Как найти и заменить названия вкладок листов в Excel?

Как извлечь данные из электронной таблицы, используя VLOOKUP, MATCH и INDEX

Если вам нужно найти и извлечь столбец данных из одной таблицы и поместить его в другую, используйте функцию VLOOKUP. Помимо Excel, эту функцию поддерживают Google Sheets и любой компьютер Mac или Windows. Она позволит вам найти данные в одной таблице по какому-то идентификатору в ней, общему с другой таблицей. Кроме того, таблицы могут находиться в разных книгах, на разных листах и т.д. Существует также функция HLOOKUP, которая делает то же самое, но при этом данные располагаются горизонтально, строка за строкой.

Функции MATCH и INDEX полезны, когда вас интересует расположение конкретных данных, например, столбца или строки, содержащей имя человека.

Лучшие варианты

Вы когда-нибудь слышали о Envato Market, который содержит тонны скриптов Excel и плагинов, позволяющих выполнять расширенные функции в Excel?

Например, вы можете:

Скринкаст

Если вы хотите следовать инструкциям данного руководства, используя файл Excel, вы можете это сделать. Пример электронной таблицы включен в zip-файл, прилагаемый к данному руководству, и называется vlookup example.xlsx.

Использование VLOOKUP

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

unique identifiers for vlookupunique identifiers for vlookupunique identifiers for vlookupУникальный идентификатор должен быть как серийный номер, не должно быть двух одинаковых идентификаторов в одной таблице.

Синтаксис

Синтаксис функции VLOOKUP:

= VLOOKUP(значение поиска, диапазон таблицы, номер столбца, «истина/ложь»)

Вот что значат эти аргументы:

  • Искомое значение. Ячейка, содержащая уникальный идентификатор.
  • Диапазон стола. Диапазон ячеек, содержащих идентификатор в первом столбце, и последующие столбцы, содержащие остальные данные.
  • Номер колонки. Номер столбца, содержащего нужные вам данные. Не путайте его с буквой колонки. На рисунке выше Штаты находятся в колонке 4. Именно. Правда или нет. Этот аргумент является необязательным. True означает, что принимается приблизительное совпадение, а False означает, что принимается только точное совпадение.
Читайте так же:
Как извлечь имя пользователя из адресов электронной почты в Excel?

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

syntax of vlookupsyntax of vlookupsyntax of vlookupСинтаксис функции VLOOKUP

Определение имени диапазона для создания абсолютной ссылки

Vlookup example.xlsx, перейдите на лист «Суммы продаж». После ввода формулы в ячейку B5 функция автозаполнения скопирует ее в ячейки ниже. Поэтому диапазон ячеек в формуле должен быть абсолютной ссылкой. Хорошим способом сделать это является задание имени для диапазона ячеек.

Задание имени диапазона в Excel

  1. Перед вводом формулы перейдите к листу исходных данных.
  2. Выберите ячейки от A4 (заголовок столбца «Номер команды») до H203. Быстрый способ сделать это — щелкнуть на A4, затем нажать Ctrl-Shift-End (Command-Shift-End на Mac).
  3. Щелкните внутри поля имени в столбце A (теперь в поле имени отображается A4).
  4. Введите данные и нажмите Enter.
  5. Теперь вы можете использовать данные имени вместо $A$4:$H$203 в формуле.

Задание имени диапазона в Google Sheets.

Его название несколько отличается от названия Google Sheets.

  1. Щелкните заголовок первого столбца исходных данных, затем нажмите Ctrl-Shift-Right Arrow (Command-Shift-Right Arrow на Mac). Затем выберите заголовок столбца в строке.
  2. Нажмите Ctrl-Shift-Down Arrow (Command-Shift-Down Arrow на Mac). Затем выберите соответствующие данные.
  3. Нажмите меню Данные, затем выберите Именованные и защищенные диапазоны.
  4. Введите данные в поле Имена и защищенные диапазоны справа, затем нажмите кнопку Готово.

Ввод формулы

Чтобы ввести формулу, перейдите на лист Сумма продаж и щелкните на ячейке B5.

Presiona Введите, название компании.

entering the vlookup functionentering the vlookup functionentering the vlookup functionВвод функции VLOOKUP

Результат должен быть равен 40. При необходимости щелкните на B5 еще раз, чтобы добавить значения под столбцом. Курсор мыши превращается в перекрестие, когда вы помещаете его в точку автозаполнения в правом нижнем углу ячейки.

mouse pointer on the autofill dotmouse pointer on the autofill dotmouse pointer on the autofill dotКогда вы поместите курсор мыши на точку в правом нижнем углу ячейки, он превратится в перекрестие Автозаполнения.

Читайте так же:
Как исключить выходные на оси дат в Excel?

Введите значения в колонку ниже, дважды щелкнув мышью.

worksheet with data after using autofillworksheet with data after using autofillworksheet with data after using autofillДважды кликните перекрестием Автозаполнения, чтобы скопировать формулу ниже по столбцу

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

Использование MATCH

При использовании функции MATCH возвращается не значение из данных, а позиция этого значения в данных. Как если бы вы спросили, где находится улица Мейн-стрит, 135, а вам ответили, что это четвертое здание по улице.

Как извлечь базовый URL из строки в JavaScript?

Я пытаюсь найти относительно простой и надежный способ извлечения базового URL из строковой переменной с использованием JavaScript (или jQuery).

например, что-то вроде:

Я бы хотел получить:

Регулярное выражение лучше? Можно ли присвоить URL, извлеченный из этой строки, новой переменной с помощью этого оператора?

Все, что я нашел в мире JavaScript, похоже, сосредоточено на сборе этой информации из URL документа, используя location.host или подобное.

18 ответов:

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

Ниже приведены решения Давида.

браузеры на основе WebKit, Firefox с версии 21 и текущие версии Internet Explorer (IE 10 и 11) реализуют location.origin .

Location.origin включает протокол домена и дополнительно порт из URL.

например, location.origin из URL http://www.sitename.com/article/2009/09/14/this-is-an-article/ и http://www.sitename.com .

Для целевых браузеров, не поддерживающих location.origin, используйте следующий краткий полифилл:

Вам не нужен jQuery, вам просто нужно

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

Вы можете легко сделать это с помощью jQuery, добавив элемент и считав его attr.

обзор 07-2017 : он может быть также более элегантным и имеет больше возможностей

Плагин jQuery DOM manipulation позволяет очень легко редактировать элементы DOM в javascript без добавления их в DOM:

Простым, но полным методом извлечения базовых значений из строкового представления URL является правило Дугласа Крокфорда для регулярных выражений:

Если вы ищете более продвинутый набор инструментов для работы с URL, попробуйте URI.js, который поддерживает геттеры, сеттеры, нормализацию URL и т.д. и имеет хороший строковый интерфейс.

Если вы ищете плагин jQuery, jquery.url address.js должен вам помочь.

Проще сделать это с помощью элемента якоря, как предложил @epascarello. Недостатком этого способа является то, что вам придется создать элемент DOM. Однако его можно кэшировать в ближней части и повторно использовать для нескольких URL:

Применяйте его таким образом:

Мое регулярное выражение извлекает хост из URL следующим образом:

И используйте его следующим образом

Обратите внимание, если url не заканчивается /, то хост не будет / .

Вот некоторые свидетельства:

Вы можете использовать приведенные ниже коды, чтобы получить различные параметры для текущего URL-адреса

То вы можете использовать его следующим образом.

Значение URL будет .

«var url» также включает два метода.

В таком случае значение параметра paramQ будет равно 1.

Значение параметра allParameters — это только имена параметров.

протестировано на IE, chrome и firefox.

  • Найдите ноль или более букв, за которыми следует двоеточие (протокол, который может быть опущен)
  • , за которым следует / / (также может быть опущен)
  • , за которым следуют все символы, кроме / (имя хоста и порт)
  • , за которым следует /
  • , за которым следует что-либо (путь минус начало /).

Вместо того, чтобы рассматривать window.location.protocol и window.location.origin и, возможно, пропускать указанный номер порта и т.д., просто возьмите все до третьего «/»:

Можно выполнить с помощью регулярного выражения :

Функцию ?

голоса
Рейтинг статьи
Читайте так же:
Как изменить шаблон книги / листа по умолчанию в Excel?
Ссылка на основную публикацию
Adblock
detector