Главная > Компьютеры > Программы
Импорт данных со страниц веб сайтов
Рассмотрены методы импорта данных с веб страниц. Показаны возможности SEO плагина IEContextHtml для настраиваемого импорта данных с веб страниц.
Автор: Алексей Пуча
Простейший метод сохранения данных из веба - это сохранение веб страницы целиком на локальном компьютере. Хотя некоторые веб страницы и не позволяют это делать напрямую, но многие браузеры, например Firefox, дают возможность выделить всю страницу и сохранить выделенный фрагмент html на диске. Обычно, такой способ исправно работает с динамическими ajax страницами тоже. Основным недостатком такого подхода, является лишние данные и разметка, которые не позволяют использовать его для ввода информации в базы данных.
В версии 2010 Excel появился мастер импорта данных и веба. Мастер позволяет импортировать таблицы из веб страниц и создавать на их основе таблицы excel. В простейших случаях этот метод работает хорошо, но если нужно импортировать данные по определенному алгоритму, например только четные строки, атрибуты html, нестандартную разметку - он не годится.
При поиске плагинов для импорта данных я обнаружил интересную программку IEContextHtml. Автор позиционирует ее как SEO плагин для IE, проверяющий индексацию ссылок и исходный код веб страницы. В версии 3.0 этого плагина разработчик ввел открытый интерфейс к импорту данных с веб страницы с помощью javascript.
Плагин устанавливает в контекстное меню Internet Explorer пункты, которые приводят в движение javascript код, работающий с веб страницей. В бесплатно распространяемой версии плагина возможно добавление только одного пользовательского пункта, но при ближайшем рассмотрении оказалось, что можно менять код в окошке "Javascript меню" на свой, и основное неудобство - это необходимость хранения своих кодов вне программы. Код на javascript без труда получает доступ к буферу обмена windows и, таким образом, мы получаем настраиваемый импорт данных из веба. Поставляемый вместе с плагином javascrpipt код копирует текст выделенной таблицы в буфер обмена в виде csv файла и может служить основой для создания собственных скриптов для импорта данных.