ВВЕДЕНИЕ 4
1 Анализ технического задания 5
1.1 Выбор программных средств разработки 5
1.2 Python 7
1.3 HTML 8
1.4 JavaScript 10
1.5 URLlib 11
1.6 Django 12
1.7 Машинное обучение 14
1.8 Парсинг 18
1.9 Bootstrap 19
1.10 Chart.js основные характеристики 20
1.11 Системы контроля версий 21
1.12 Bitbucket 24
Вывод по главе 1 26
2 Раздел проектирования и разработки 27
2.1 Общая структура сайта 27
2.2 Разработка интерфейса web-сайта 28
2.3 Реализация машинного обучения 31
2.4 Получение данных 32
2.5 Реализация графиков 34
2.6 Верстка на Twitter Bootstrap 35
Вывод по главе 2 37
ЗАКЛЮЧЕНИЕ 38
СПИСОК СОКРАЩЕНИЙ 39
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 40
ПРИЛОЖЕНИЕ А Листинг программы машинного обучения «SVC» 42
ПРИЛОЖЕНИЕ Б Листинг программы парсинга и обработки данных 43
ПРИЛОЖЕНИЕ В Листинг программы отрисовки графика новостей 45
ПРИЛОЖЕНИЕ Г Листинг программы отрисовки графика процентного соотношения новостей 47
ПРИЛОЖЕНИЕ Д Листинг программы «Список новостей» 49
ПРИЛОЖЕНИЕ Е Слайды презентации 50
Новостные сайты изданий, ленты новостей в социальных сетях, блоги журналистов содержат огромное количество информации и постов, что не всегда удобно и интересно пользователю. В таких случая пользователю приходится тратить большое количество времени на поиск нужной информации.
На сегодняшний день существует множество новостных сайтов. Они отличаются между собой оформлением, спецификой предлагаемых новостей, масштабом сайта.
В то же время, мало какие сайты предоставляют выбор разделов и поиск по новостным постам.
Тема выпускной квалификационной работы «Web-приложение «Агрегатор новостей»». Эта тема актуальна по следующим причинам:
- не многие сайты предоставляют только интересную пользователю информацию. При этом многие люди хотели бы экономить свое время и сразу читать только актуальные им новости;
- разработчики сайтов не предлагают хорошего инструмента выбора актуальных тематик новостей для пользователя.
Цель данной работы создать Web-приложение «Агрегатор новостей».
В данной работе рассмотрены актуальные вопросы разработки и создания Web-сайта, парсинга. Так же рассмотрены основные аспекты машинного обучения, библиотеки BeautifulSoup, модуля машинного обучения SKLearn, фреймворка Django, структуры сайта и языка Python в целом.
При этом была проведена исследовательская работа по актуальности данного сайта в наше время.
Были решены следующие задачи:
- ознакомление с современными Интернет-технологиями и использование их в разработке;
- изучение основных программы применяемых для разработки и создания web-сайта, таких как HTML5, CSS3, Bootstrap, JavaScript, Django, Spyder;
- ознакомление с методами и способами представления на web- страницах различных видов информации:
1) тексты;
2) изображения;
3) диаграммы и график;
4) формы.
- ознакомление с основными правилами и рекомендациями по разработке и созданию web-приложений;
- определение структуры web-страниц;
- предоставление готового web-сайта.
В результате проведенных работ на базе выбранных технологий был создан современный аналитический web-сайта с комфортным и удобным интерфейсом. Так же реализована функция просмотра интересующих вас данных по категориям и в целом.
1 Алексеев, А.П. Введение в Web-дизайн: учебное пособие. — М.: СОЛОН-ПРЕСС, 2008. — 185 с.
2 Барысов, Р. Постройте профессиональный сайт сами. — СПб.: 2009. — 232 с.
3 Документация BeautifulSoup [Электронный ресурс]. — Режим доступа: http://www.crummy.com/software/BeautifulSoup
4 Документация Bootstrap шаблоны [Электронный ресурс]. — Режим доступа:http://bootstrap-3.ru/bootstraptheme.php
5 Документация Django [Электронный ресурс]. — Режим доступа: http://djbook.ru/rel1.7
6 Документация библиотека scikit-learn [Электронный ресурс]. — Режим доступа:http://scikit-learn.org/stable/auto_examples/index.html
7 Документация системы контроля версий [Электронный ресурс]. — Режим доступа: http://bacher09.org/hgbook/ru/html/how-did-we-get-here.html
8 Дронов, В.А. Программирование. — СПб.: БХВ-Петербург, 2006. — 706 с.: ил.
9 Использование Django [Электронный ресурс]. — Режим доступа: http://www.ibm.com/developerworks/ru/library/l_django
10 Использование Urllib в Python [Электронный ресурс]. — Режим доступа: http://python-for-web.blogspot.ru/2014/06/urllib2-python.html
11 Кроудер, Д. Создание web-сайта для чайников: 3-е издание. — М.: Диалектика, 2009. — 352 с.
12 Основы машинного обучения [Электронный ресурс]. — Режим доступа: http://www.statsoft.ru/home/textbook/modules/stmachlearn.html
13 Особенности HTML [Электронный ресурс]. — Режим доступа: http://lpgenerator.ru/blog/2013/10/21/chto-takoe-html-korotko-o-glavnom
14 Отличительные особенности JavaScript [Электронный ресурс]. — Режим доступа: http://articles-hosting.ru/329/javascript-%E2%80%93-chto-eto- takoe.html
15 Панфилов, К. По ту сторону веб-страницы. — М.: ДМК Пресс, 2008. — 440 с.:ил.
16 Парсинг сайтов. Описание принципов [Электронный ресурс]. — Режим доступа: http://web2033.com/parsing-basis
17 Печников, В.Н. Самоучитель Web-страниц и Web-сайтов. — М.: Триумф, 2006. — 446 с.
18 Печников, В.Н. Создание Web-сайтов без посторонней помощи. — М.: Технический бестселлер, 2006. — 464 с.: ил.
19 Причины выбора Mercurial [Электронный ресурс]. — Режим доступа: http://www.studfiles.ru/preview/2165782/page:3
20 Уроки по Bootstrap [Электронный ресурс]. — Режим доступа: http://dedushka.org/uroki/6901.html