Разработка автоматизированной веб-ориентированной системы составления каталога товаров при поиске по изображениям

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



В°ботки и причины ее выбора

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

Разработка модулей, а также пользовательского интерфейса приложения будет осуществляться на языке программирования C# в среде разработки Microsoft Visual Studio 2011 beta. Это одна из самых мощных и систем, позволяющая на самом современном уровне создавать как отдельные прикладные программы Windows, так и разветвленные комплексы, предназначенные для работы в корпоративных сетях и в Интернет. Пользовательский интерфейс этой среды служит для организации взаимодействия с программистом и включает в себя ряд окон, содержащих различные элементы управления. С помощью средств интегрированной среды разработчику удобно проектировать интерфейсную часть приложения, а также писать программный код и связывать его с элементами управления. В интегрированной среде разработки проходят все этапы создания приложения, включая отладку.

Microsoft Visual Studio 2011 - это комбинация нескольких важнейших технологий:

.высокопроизводительный компилятор в машинный код;

2.объектно-ориентированная модель компонент;

.визуальное (а, следовательно, и скоростное) построение приложений из программных прототипов.

Разработка приложений в Microsoft Visual Studio 2011 осуществляется с применением объектно-ориентированного программирования (ООП) и визуального программирования. ООП и визуальное программирование позволяют создавать прикладные программы самого разного назначения. Это позволяет разработчикам строить приложения весьма быстро из заранее подготовленных объектов, а также дает им возможность создавать свои собственные объекты для среды разработки. Никаких ограничений по типам объектов, которые могут создавать разработчики, не существует.

Пользовательский интерфейс был разработан с помощью технологии Windows Presentation Foundation. Эта технология была выбрана потому, что она позволяет достаточно легко проектировать сложные интерфейсы со сложными элементами управления, легко делать привязки данных и осуществлять анимацию.

Хранение информации будет осуществляться при помощи СУБД MS SQL Server 2008. Эта система отталкивается от концепции платформы данных Майкрософт: она упрощает управление любыми данными в любом месте и в любой момент времени. Она позволяет хранить в базах данных информацию, полученную из структурированных, полуструктурированных и неструктурированных источников, таких как изображения и музыка. В SQL Server 2008 имеется большой набор интегрированных служб, расширяющих возможности использования данных: вы можете составлять запросы, выполнять поиск, проводить синхронизацию, делать отчеты, анализировать данные. Все данные хранятся на основных серверах, входящих в состав центра обработки данных. К ним осуществляется доступ с настольных компьютеров и мобильных устройств. Таким образом, существует полный контроль над данными независимо от того, где я их сохранил. Так же система SQL Server 2008 позволяет обращаться к данным из любого приложения, разработанного с применением технологий Microsoft.net и Visual Studio, а также в пределах сервисно-ориентированной архитектуры и бизнес-процессов - через Microsoft BizTalk Server. Сотрудники, отвечающие за сбор и анализ информации, могут работать с данными, не покидая привычных приложений, которыми они пользуются каждый день, например приложений выпуска 2007 системы Microsoft Office. SQL Server 2008 позволяет создать надежную, производительную, интеллектуальную платформу, отвечающую всем требованиям по работе с данными.

2. Методика

.1 Методика получения информации с электронных ресурсов

В связи с отсутствием на рассматриваемом сайте API функций для получения информации необходимо загружать страницы товарных позиций и извлекать информацию непосредственно со страницы, для этого необходим программный доступ к элементам страницы. Также необходимо учесть, что часть информации на странице подгружаются с сайта с помощью технологии Ajax, при выполнении определенных скриптов. В связи с этим обычных Http запросов будет недостаточно, необходимо обеспечить выполнение этих скриптов на странице. Учитывая все вышесказанные факты в качестве объекта, получающего страницу с сайта, был выбран WebBrowser, поставляемый вместе с Visual Studio.

Для удобства разработки был написан модуль расширений для WebBrowser и элементов DOM (HtmlElement) позволяющие дожидаться загрузки документа, загрузки определенных элементов DOM с определенными значениями id,class, tagName, позволяют делать выборку из непосредственных вложенных элементов и в каскадном режиме элементов, определять их классы.

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

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

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

Примене