Введение 5
Глава 1. Диалоговые системы 7
1.1 Введение в диалоговые системы 7
1.2 Аспекты диалога 8
1.3 Чат-боты 10
1.4 Использование диалоговых систем и чат-ботов 12
Глава 2. Работа чат-бота в социальной сети ВКонтакте 15
2.1 Чат-боты во ВКонтакте 15
2.2 API Вконтакте 16
Глава 3. Парсинг 18
3.1 Введение в парсинг 18
3.2 Описание кода парсера 20
Глава 4. Разработка чат-бота для социальной сети ВКонтакте 27
4.1 Схема диалога 27
4.2 Подключение API 28
4.3 Описание кода 28
4.4 Тестирование результатов 40
Заключение 42
Приложения 43
Список литературы 52
Электронные ресурсы 54
Диалоговые системы являются одним из наиболее интересных, перспективных и захватывающих направлений компьютерной лингвистики. Эта научная область чрезвычайно востребована в современном мире. Чат-бот ведет коммуникацию от лица компании или бренда с целью упростить онлайн- общение (предоставить актуальную информацию в наиболее оперативные сроки), используется как альтернатива переписке с живым оператором или звонку менеджеру компании.
Возрастающая востребованность виртуальных помощников определяет актуальность данной выпускной квалификационной работы.
Целью выпускной квалификационной работы является разработка системы, способной дать рекомендацию в выборе кинофильма на основе собранных о пользователе данных в процессе диалога с ним. Исходя из поставленной цели, необходимо решить следующие задачи:
• изучить основные аспекты диалога;
• составить схему диалога;
• написать программу, собирающую необходимые данные с
сайта «Кинопоиск» для того, чтобы создать базу данных фильмов;
• разработать чат-бот на языке Python, который общается с
пользователем в вопросно-ответной форме и сохраняет ответы собеседника на задаваемые вопросы;
• написать программу, способную обрабатывать полученные данные, чтобы подобрать для пользователя потенциально интересную ему киноленту;
• подключить созданный чат-бот к социальной сети ВКонтакте.
Данная работа состоит из введения, четырёх глав, заключения, списка литературы из 6 названий и приложений. В первой главе рассматриваются теоретические вопросы, связанные с диалоговыми системами и чат-ботами. Вторая глава посвящена описанию работы чат-бота в социальной сети ВКонтакте. В третьей главе рассматриваются определение парсинга и его этапы, приводится описание работы программы, которая собирает необходимую информацию с сайта «Кинопоиск» и создает базу данных фильмов. В четвертой главе описаны схема диалога и пошаговая разработка чат-бота, а также представлена оценка полученных результатов.
В данной работе было описано создание рекомендательной системы для выбора кинофильмов в процессе диалога. Для этого был разработан парсер, собирающий необходимые данные с сайта «Кинопоиск» и создающий базу данных фильмов и мультфильмов. Также была составлена схема диалога, на основе которой был разработан чат-бот, который может собирать данные про пользователя, общаясь с человеком в вопросно-ответной форме на тему кинематографа. При создании чат-бота учитывались основные аспекты диалога. Разработанный чат-бот задает вопросы пользователю, после чего записывает ответы собеседника в отдельный файл. Полученные данные обрабатываются специальной программой, в результате работы которой пользователю выдается кинолента с наибольшим количеством совпадений. Данный чат-бот был подключен к социальной сети Вконтакте и успешно протестирован с помощью 30 пользователей.
После пополнения базы данных кинофильмов разработанная рекомендательная система может быть использована на одной из платформ, посвященных кинематографии. Система может быть легко расширена для учета других требований пользователя.
1. Константинова Н. С., Дегтева А. В. Глава 4. Диалоги и чат-боты //Прикладная и компьютерная лингвистика. - 2016. - С. 233-243.
2. Власов М. П., Шимко П. Д. Глава 7.1. Диалоговые системы //Моделирование экономических процессов. - 2005. - С. 120-122.
3. Смыслова Л. В. Чат-бот как современное средство интернет- коммуникаций //Молодой ученый. - 2018. - №. 9. - С. 36-39.
4. Ожегов С. И., Шведова Н. Ю. Толковый словарь Ожегова. - 1949.
5. Мильчин А. Э. Издательский словарь-справочник. - ОЛМА Медиа Групп, 2003.
6. Шауар Б., Этвел Э. Chatbots: они действительно полезны? //Форум LDV. - 2007. - Т. 22. - №. 1. - С. 29-49.
7. Ураев Д. А. Классификация и методы создания чат-бот приложений //International scientific review. - 2019. - №. LXIV. - С. 30-33.
8. Матвеева Н. Ю., Золотарюк А. В. Технологии создания и применения чат-ботов //Научные записки молодых исследователей. - 2018. - №. 1 - С. 28-30.
9. Закалин И. Ю. Автоматизация сбора информации в сети Интернет //Вестник магистратуры. - 2018. - №. 5-4 (80). - С. 32-33.
10. Поликарпов Е. С., Анисимов С. Л., Толстых А. А. О защищенности сайта сети интернет от автоматизированного сбора данных //Вестник Воронежского института МВД России. - 2020. - №. 1 - С. 77-84.
11. Параскевов А. В., Каденцева А. А., Мороз С. И. Перспективы и особенности разработки чат-ботов //Политематический сетевой электронный научный журнал Кубанского государственного аграрного университета. - 2017. - №. 130. - С. 395-404.
12. Барашко Е. Н., Васильев А. С., Зубань С. В. Голосовые помощники //Новые импульсы развития: вопросы научных исследований. - 2020. - №. 1-1. - С. 47-53.
13. Будникова А. С., Бабенкова О. С. Использование чат-ботов при изучении иностранного языка //Ученые записки. Электронный научный журнал Курского государственного университета. - 2020. - №. 3 (55). - С. 146-150.
14. Коробкова Е. П., Долгова Т. Г. Актуальность и практическое применение теста Тьюринга //Актуальные проблемы авиации и космонавтики. - 2010. - Т. 1. - №. 6. - С. 420-421.
15. Кузьменко Ф. В. Чат-бот как инновационная система интернет- коммуникаций //ББК 60 Д70 Ответственный редактор: Гуляев Герман Юрьевич, кандидат экономических наук Д70. - 2019. - С. 41-43.
16. Татаркин М.С., Шмелева А.А. Чат-бот в социальной сети Telegram // Мир будущего. — 2018. — С. 1-12.
17. Черноморова Т. С., Воробьев С. П. Классификация и принципы построения систем вопросно-ответного поиска //Бюллетень науки и практики. -
2020. - Т. 6. - №. 8. - С. 145-156.
18. Григорьев К. А. Принципы парсинга html-страниц //Сборник статей по итогам Международной научно-практической конференции 29 декабря 2017 г. - 2017. - С. 30-32.
19. Прохоренок Н., Дронов В. Глава 7. Регулярные выражения //Python 3. Самое необходимое, 2-е изд. - БХВ-Петербург - 2019. - С. 120-139.
20. Zheng C., He G., Peng Z. A Study of Web Information Extraction Technology Based on Beautiful Soup //J. Comput. - 2015. - Т. 10. - №. 6. - С. 381-387.
21. Крапивин Р. Р., Гареева Г. А. Получение доступа к данным путем авторизации в аккаунт с помощью библиотеки Requests в языке Python //Инновационные технологии, экономика и менеджмент в промышленности. -
2021. - С. 206-208.
22. Ong S. P. et al. The Materials Application Programming Interface (API): A simple, flexible and efficient API for materials data based on REpresentational State Transfer (REST) principles //Computational Materials Science. - 2015. - Т. 97. - С. 209-215.
23. Кочковая Н. В., Чечевичко Р. С. Разработка сценария для чат-бота //Научный потенциал высшей школы-будущему России. - 2021. - С. 23-26.
24. Мешков В. Е., Прокопенко М. С. Разработка чат-бота помощника на языке python //Научный потенциал высшей школы-будущему России. - 2021. - С. 26-32.
25. McKinney W. et al. pandas: a foundational Python library for data analysis and statistics //Python for high performance and scientific computing. - 2011. - Т. 14. - №. 9. - С. 1-9.
Электронные ресурсы
26. Netology: https://netology.ru/blog/bots-45 (дата обращения:
21.04.2022).
27. Постнаука: https://postnauka.ru/video/82039 (дата обращения:
21.04.2022).
28. Habr: https://habr.com/ru/company/mipt/blog/330228/(дата обращения: 21.04.2022).
29. Netology2: https://netology.ru/blog/chat-bot-vkontakte (дата
обращения: 21.04.2022).
30. Документация: https://vk-api.readthedocs.io/en/latest/vk_api.html(дата обращения: 21.04.2022).
31. Документация ВК: https://vk.com/dev/bots_docs(дата обращения: 21.04.2022).
32. API: https://dementiy.github.io/assignments/vk_api/(дата обращения: 21.04.2022).
33. Habr2: https://habr.com/ru/company/asus/blog/404505/ (дата
обращения: 21.04.2022).
34. BeautifulSoup:
https://www.crummy.com/software/BeautifulSoup/bs4/doc/ (дата обращения:
10.05.2022).
35. XlsxWriter: https://xlsxwriter.readthedocs.io/worksheet.html (дата
обращения: 10.05.2022).
36. Requests: https://pythonru.com/biblioteki/kratkoe-rukovodstvo-po-
biblioteke-python-requests (дата обращения: 10.05.2022)
37. Regular Expressions: https://docs.python.org/3/library/re.html(дата
обращения: 10.05.2022)