Разработка приложения агрегатора данных

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

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 14.06.2018
Размер файла 2,9 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [697] ']) [2] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td> // div [5] /div/label [2] /span</td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1284] ']) [5] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td> // div [9] /div/label [5] /span</td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>css=i. form-param_custom_45__icon. form-param_custom_45__icon_7256</td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>name=params [186] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td> // div [11] /div/label/span</td>

<td></td>

</tr>

<tr>

<td>type</td>

<td>id=flt_param_1285</td>

<td>128</td>

</tr>

<tr>

<td>click</td>

<td>name=params [185] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td> // div [14] /div/label/span</td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>name=params [696] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td> // div [16] /div/label/span</td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>name=params [1167] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td> // div [17] /div/label/span</td>

<td></td>

</tr>

<tr>

<td>select</td>

<td>id=flt_param_1132</td>

<td>label=Гидро-</td>

</tr>

<tr>

<td>select</td>

<td>id=flt_param_1134</td>

<td>label=Кондиционер</td>

</tr>

<tr>

<td>select</td>

<td>id=flt_param_1137</td>

<td>label=Ткань</td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1147] [0] [1148] [] ']) [4] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1147] [0] [1148] [] ']) [5] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1147] [0] [1148] [] ']) [9] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1149] [0] [1150] [] ']) [2] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>name=params [1149] [0] [1150] [] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>name=params [1139] [0] [1140] [] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1139] [0] [1140] [] ']) [3] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>name=params [1136] [0] [1138] [] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1143] [0] [1144] [] ']) [3] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>name=params [1145] [0] [1146] [] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1145] [0] [1146] [] ']) [3] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1147] [0] [1148] [] ']) [3] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1147] [0] [1148] [] ']) [2] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>name=params [1151] [0] [1152] [] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1151] [0] [1152] [] ']) [2] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1151] [0] [1152] [] ']) [4] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>name=params [1153] [0] [1154] [] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1153] [0] [1154] [] ']) [2] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1153] [0] [1154] [] ']) [3] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1153] [0] [1154] [] ']) [5] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1153] [0] [1154] [] ']) [6] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1168] [0] [1207] [] ']) [2] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>name=params [1163] [0] [1165] [] </td>

<td></td>

</tr>

<tr>

<td>select</td>

<td>id=flt_param_1164</td>

<td>label=22&quot; </td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1160] [0] [1162] [] ']) [2] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>name=params [1160] [0] [1162] [] </td>

<td></td>

</tr>

<tr>

<td>select</td>

<td>id=flt_param_1161</td>

<td>label=Ксеноновые</td>

</tr>

<tr>

<td>click</td>

<td>name=params [1157] [0] [1159] [] </td>

<td></td>

</tr>

<tr>

<td>select</td>

<td>id=flt_param_1158</td>

<td>label=8+ колонок</td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1155] [0] [1156] [] ']) [2] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>name=params [1155] [0] [1156] [] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1155] [0] [1156] [] ']) [3] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1155] [0] [1156] [] ']) [5] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1155] [0] [1156] [] ']) [7] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1155] [0] [1156] [] ']) [8] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1155] [0] [1156] [] ']) [9] </td>

<td></td>

</tr>

<tr>

<td>click</td>

<td>xpath= ( // input [@name='params [1155] [0] [1156] [] ']) [10] </td>

<td></td>

</tr>

<tr>

<td>type</td>

<td>id=item-edit__price</td>

<td>800000</td>

</tr>

<tr>

<td>type</td>

<td>id=item-edit__description</td>

<td>Делал для себя и только, дам покататься</td>

</tr>

<tr>

<td>clickAndWait</td>

<td> // div [6] /div [2] /button</td>

<td></td>

</tr>

</tbody></table>

</body>

</html>

Приложение 3. Поля и методы класса PageScanner

Сигнатура метода

Описание

WebClient createClient ()

Возвращает новый экземпляркласса WebClientдля работы со страницами веб-сайта.

ScanExecutor (MongoDataService MongoDataService)

Конструктор, который принимает в качестве параметра объект MongoDataService.

void start (Scan scan)

Выполняет сбор информации с веб-сайта в соответствии с содержимым объекта scan.

WebsiteSection getWebsiteSection (Scan scan, boolean isSearchScan)

Возвращает раздел веб-сайта, указанный в сканировании.

String getBaseUrl (Scan scan, Website website, WebsiteSectionUrl sectionUrl, boolean isSearchScan)

Возвращает начальный адрес сканирования scanв соответствии с адресом раздела sectionUrlвеб-сайта websiteи значением флага isSearchScan.

String [] getParameters (Website website, boolean isSearchScan)

Возвращает параметры навигациипо веб-сайту website в зависимости от флага isSearchScan.

String getResultsXpath (Scan scan, Website website, WebsiteSectionUrl sectionUrl, boolean isSearchScan)

Возвращает XPathзапрос для получения ссылок на основные страницы веб-сайта.

List<Object> getNodesFromWebpageByXpath (String url, String xpath)

Возвращает список объектов, полученных в результате выполнения XPathзапроса xpathна веб-странице url.

void Delay (long milliseconds)

Производитзадержкуна millisecondsмиллисекунд.

List<String> convertFromNodesToStrings (List<Object> nodes)

Возвращаетсписокобъектов, преобразованныйвсписокстрок.

boolean invalidScanrecord (Scanrecord scanrecord)

Проверяет поля результата сканирования на корректность.

void processLinks (Scan scan, Website website, List<String> links)

Выполняет переходы на веб-страницы linksвеб-сайта websiteи сохраняет с них информацию.

void customPageParsing (String link, Website website, Scanrecord scanrecord)

Сохраняет информацию с веб-страницы по адресу link, используя XPathзапросы.

String getByCustomXpath (HtmlPage page, String xpath)

Возвращает содержимое элементов страницы page, полученных с помощью запроса xpath, в виде текста.

void scanWithNoNavigation (Scan scan, Website website)

Выполняет сбор информации с веб-сайта websiteв соответствии с содержимым объекта scan без навигации.

void scanWithUrlNavigation (Scan scan, Website website)

Выполняет сбор информации с веб-сайта websiteв соответствии с содержимым объекта scan, используя навигацию путем изменения адреса текущей страницы.

void scanWithContiniousAjaxNavigation (Scan scan, Website website)

Выполняет сбор информации с веб-сайта websiteв соответствии с содержимым объекта scan, используя навигацию путем выполнения AJAXзапросов.

void scanWithJavascriptAdvancedNavigation (Scan scan, Website website)

Выполняет сбор информации с веб-сайта websiteв соответствии с содержимым объекта scan, используя навигацию путем выполнения Javascriptкода.

Приложение 4. Поля и методы класса DBService

Сигнатура метода

Описание

MongoDataService (String mongoDatabaseUrl)

Конструктор, который принимает в качестве параметра адрес подключения к базе данных.

MongoClient genereateClient ()

Возвращает клиента, с помощью которого можно выполнять запросы.

MongoDocument getById (String id)

Возвращает документ из базы данных поидентификатору id.

void create (BaseMongoObject entity)

Создаёт в базе данныхновыйдокумент в соответствии с полями объекта entity.

void update (BaseMongoObject entity)

Обновляет документ базы данных текущим значением полей объекта entity.

void upload (List<MongoInputDocument> documents)

Создаёт в базе данных документы documents.

public void deleteById (String id)

Удаляет из базы данных объект с идентификатором id.

void deleteById (List<String> idList)

Удаляет из базы данных все документы с идентификаторами из списка idList.

longgetCount (String objectType)

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

longgetCount (mongoQuery query)

Возвращает количество документов, полученных с помощью запроса query.

void deleteByQuery (String query)

Удаляет из базы данных документы, выбранные с помощью запроса query.

MongoQuery generateQueryFor (String objectType)

Создаёт объект запроса для объекта типа objectType.

List<Usergroup> getAllUsergroups ()

Возвращает все существующие группы пользователей.

Usergroup getUsergroupByName (String usergroupName)

Возвращает группу пользователей с названием usergroupName.

User getUserById (String id)

Возвращает пользователя с идентификатором id.

User getUserByName (String username)

Возвращает пользователя с именем username.

List<Scan> getScans ()

Возвращает все существующие сканированияплощадок.

List<Scan> getPostedAds ()

Возвращает все существующие объявления размещенные пользователями.

Scan getScanById (String id)

Возвращает сканирование с идентификатором id.

void UpdateScanLastDate (Scan scan)

Обновляет дату и время последнего сканирования scanтекущими значениями.

String generateScanQueryByFilter (String queryString)

Генерирует строку запроса для получения объявлений по поисковому запросу queryString.

MongoDocumentList getScansByFilter (int resultsPerPage, int pageNumber, String queryString)

Возвращает список объявлений в соответствии с поисковым запросом queryStringсо страницы pageNumberпри разбиении результатов на resultsPerPageдокументов.

String generateScanrecordQueryByFilter (String queryString, boolean extendedSearch)

Генерирует строку запроса для получениярезультатов сканирований по поисковому запросу queryString с параметром расширенного поиска extendedSearch.

MongoDocumentList getScanrecordByFilter (int resultsPerPage, int PageNumber, String queryString, boolean extendedSearch)

Возвращает список результатов сканирований в соответствии с поисковым запросом queryString и параметром расширенного поиска extendedSearchсо страницы pageNumberпри разбиении результатов на resultsPerPageдокументов.

Website getWebsiteById (String id)

Возвращает веб-сайт с идентификатором id.

Website getWebsiteByUrl (String urlWithoutProtocol)

Возвращает веб-сайт с адресом urlWithoutProtocol.

String generateWebsiteQueryByFilter (String queryString)

Генерирует строку запроса для получениявеб-сайтов по поисковому запросу queryString.

MongoDocumentList getWebsitesByFilter (int resultsPerPage, int pageNumber, String queryString)

Возвращает список веб-сайтов в соответствии с поисковым запросом queryString со страницы pageNumberпри разбиении результатов на resultsPerPageдокументов.

MongoDocumentList getWebsitesCountByFilter (int resultsPerPage, int pageNumber, String queryString)

Возвращает количество веб-сайтов в соответствии с поисковым запросом queryString со страницы pageNumberпри разбиении результатов на resultsPerPageдокументов.

WebsiteCategory getWebsiteCategoryById (String id)

Возвращает категорию веб-сайтов с идентификатором id.

WebsiteCategory getWebsiteCategoryByName (String name)

Возвращает категорию веб-сайтов с названием name.

WebsiteSection getWebsiteSectionById (String id)

Возвращает раздел веб-сайтов с идентификатором id.

WebsiteSection getWebsiteSectionByName (String name)

Возвращает раздел веб-сайтов с названием name.

WebsiteSectionUrl getWebsiteSectionUrl (String websiteId, String websiteSectionId)

Возвращает адрес раздела веб-сайта по внешнему ключу веб-сайта и раздела.

long getNotificationsCountFor (String userId)

Возвращает количество уведомлений для пользователя с идентификатором userId.

long getNotificationsFor (String userId)

Возвращает список уведомлений для пользователя с идентификатором userId.

Размещено на Allbest.ru


Подобные документы

  • Формирование входных и выходных данных, SQL–скрипт генерации таблиц базы данных. Создание интерфейса программного приложения и проектирование форм базы данных. Требования к аппаратно–программному обеспечению. Инструкции по установке и эксплуатации.

    курсовая работа [1,6 M], добавлен 08.02.2013

  • Область применения и требования создаваемого Web-приложения. Требования к техническому и программному обеспечению. Разработка структуры Web-приложения и выбор средств программной реализации. Программная реализация Web-приложения. Структура базы данных.

    дипломная работа [1,4 M], добавлен 03.06.2014

  • Разработка приложения, позволяющего автоматизировать документооборот предприятия по списанию основных средств. Мероприятия по защите и обеспечению целостности базы данных. Разработка клиентского приложения. Запросы к базе данных, руководство пользователя.

    курсовая работа [700,0 K], добавлен 14.01.2015

  • Последовательность разработки "Базы данных ГОСТИНИЦА" в среде Visual Studio 2010 C#. Обоснование выбора средства программирования. Требования к аппаратному обеспечению. Алгоритм решения задачи, функциональное назначение. Руководство пользователя.

    курсовая работа [2,0 M], добавлен 07.07.2012

  • Рассмотрение инфологической и даталогической модели базы данных кинотеатров города. Разработка базы данных в программе MS Access. Описание структуры приложения и интерфейса пользователя. Изучение SQL-запросов на вывод информации о кинотеатре и о фильме.

    курсовая работа [1,1 M], добавлен 04.09.2014

  • Назначение и возможности разработанного приложения для контроля активности сетевых и периферийных устройств предприятия. Язык программирования Java. Распределенные многоуровневые приложения. Структура базы данных, интерфейс разработанного приложения.

    курсовая работа [1,0 M], добавлен 16.12.2012

  • Концептуальная схема базы данных Optov. Выбор средств разработки приложения. Структура его программного обеспечения. Проектирование приложения для учета приема товаров на склад, позволяющего осуществлять удаленный доступ через Internet к базе данных.

    контрольная работа [218,0 K], добавлен 07.08.2011

  • Характеристика и технические возможности СУБД MySQL. Трехуровневая структура MySQL. Требования к аппаратному обеспечению. Создание таблицы, триггеров, генераторов, хранимых процедур в MySQL. Разработка приложения для базы данных с помощью Borland Delphi.

    курсовая работа [940,7 K], добавлен 20.12.2011

  • Описание предметной области. Концептуальное проектирование базы данных. Разработка базы данных оптового склада. Требования, предъявляемые к аппаратному и программному обеспечению Borland Delphi 7.0 и MySQL. Работа с базой данных оптового склада.

    курсовая работа [705,8 K], добавлен 18.06.2015

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

    курсовая работа [1,4 M], добавлен 12.05.2016

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.