News from this site

 Rental advertising space, please contact the webmaster if you need cooperation


+focus
focused

classification  

no classification

tag  

no tag

date  

no datas

(with source code) Design and Implementation of Python Music Radio Recommendation System Graduation Project 301210

posted on 2023-05-21 18:13     read(696)     comment(0)     like(19)     collect(5)


Music Radio Recommendation System

Summary

With the continuous advancement of human beings to the information society, the turbulent information age is setting off a new revolution. At the same time, computer network technology is developing rapidly, and network management applications are becoming more and more extensive. Therefore, establishing a music station recommendation system with B/S structure to manage music station information will systematize and standardize the management work and improve management efficiency.

The research object of this topic is the music radio recommendation system, which realizes the home page, site management ( carousel map , bulletin board), user management (administrator), content management (articles, article types) and more management (personal recommendation, music category) , popular song list, ranking list, singer, user registration) and other functions. In the design of this system, considering the system content and the audience of the system, it adopts a relatively formal design in the art of the system, and also provides friendly pages and simple operations. The system uses Python language, Django framework, and MVC mode , MySQL database, this combination not only makes use of the knowledge learned in college, but also enables the system to be truly published on the Internet, rather than a pure music system.

The system has been tested, and the operation effect is stable, and the operation is convenient and fast. In the specific application process, there may be some problems. In the future, the system will be continuously improved and updated to make it more powerful and more widely used.

Keywords: B/S structure; music recommendation; Python language; Internet

Music radio recommendation system

Abstract

With the continuous progress of mankind towards the information society, the surging information age is setting off a new revolution. At the same time, with the rapid development of computer network technology, the application of network management has become more and more widely. Therefore, establishing a music station recommendation system with B / S structure to manage music station information will systematize and standardize the management and improve the management efficiency.

The research object of this subject is the music radio recommendation system, which realizes the functions of home page, site management (rotation chart, bulletin board), user management (administrator), content management (article, article type) and more management (personalized recommendation, music category, popular song list, ranking list, singer, user registration). In the design of the system, considering the system content and the audience of the system, the system adopts a more formal design in the art of the system, and also provides friendly pages and simple operation. The system adopts Python language, Django framework, MVC mode and MySQL database. This combination not only makes use of the knowledge learned in the University, And can make the system really released to the Internet, rather than a simple music system.

After testing, the system has stable operation effect and convenient and fast operation. In the specific application process, there may be some problems. In the future, the system will be continuously improved and updated to make it more powerful and widely used.

Key Words:Keywords: B / S structure; Music recommendation; Python language; internet

Table of contents

summary 

Abstract

directory  

Chapter 1 Introduction _ 

1.1 Development background and significance

1.2 Development status

1.3 Paper structure

Chapter 2 Introduction to Main Technologies and Tools 4 

2.1 Django Framework 4

2.2 MySQL database 4

2.3 B/S structure 4

2.4 Pycharm development tools 5

2.5 Tomcat server overview 5

Chapter 3 System Analysis 6 

3.1 Feasibility Analysis 6

3.1.1 Economic feasibility 6

3.1.2 Technical Feasibility 6

3.1.3 Operational Feasibility 6

3.2 Demand Analysis 6

3.3 Business Process Analysis 7

3.4 Data Flow Analysis 8

Chapter 4 System Design 1 0

4.1 Development environment 10

4.2 System structure design 10

4.3 Main function module design 11

4.4 Database Design 12

4.4.1 Overview of database design 12

4.4.2 Conceptual Design 12

4.4.3 Table design 13

Chapter 5   System Implementation 2 7

5.1 Implementation of login module 27

5.2 Realization of user subsystem module 28

5.2.1 Realization of user home page 28

5.2.2 Realization of registration module 28

5.2.3 Realization of news module 30

5.2.4 Realization of personality recommendation module 30

5.3 Implementation of the administrator subsystem module 31

5.3.1 Realization of user management module 31

5.3.2 Implementation of the latest music module 31

5.3.3 Realization of popular song list module 32

Chapter 6 System   Testing3 4

6.1 Software testing 34

6.2 Functional testing 34

6.3 Test results 36

Chapter 7 Summary 3  7 _

Thanks 3  8

References 39

Chapter 1 Introduction

1.1 Development background and significance

The 21st century is an era of rapid economic and scientific development, and people's quality of life has been greatly improved. In order to reduce the work intensity of personnel, reduce resource waste, and rationally use time resources and space resources, it has become a must for modern companies. Things to consider , Only in this way can the company go further and develop better. The management of music station recommendations involves a huge amount of information and data. Manual processing will not only fail to keep up with the speed, but also easily cause errors, and the work efficiency is low. The company The information communication is not smooth, and it is not convenient for information statistics and data analysis, which will damage the interests of the company.

In order to solve the disadvantages of hoarding in these traditional times, achieve work goals efficiently and accurately, greatly improve the work environment and work quality, and provide users with a good music platform. Combined with the current social and economic details, it has become an inevitable trend to develop a music radio recommendation system. Not only can it improve the quality of the work, but it can also improve the efficiency of work, which is beneficial no matter from which aspect. It is convenient for statistics and inquiries, and can efficiently analyze whether the development direction of music stations is correct. Make work easier. Improve the openness and interactivity between people and machines at work.

From this point of view, it is very wise for us to develop a music radio recommendation system. It will change the work from heavy processing to simplicity and intelligence, and from complex data information to clear work. The future management will all move towards intelligence. , the road of technology. The efficiency of the fight is the quality, and it pays more attention to the combination of humanized management and intelligence, so that the development can go further and further. The 21st century is an era of fighting for technology and innovation.

At the end of the last century, network technology gradually became popular, and the development of the Internet entered the initial stage. At the beginning of the new century, information technology began to develop gradually, and computer application technology gradually showed its advantages. Then, a large number of computers entered thousands of households, enterprises, institutions, universities, government agencies and other departments. With the gradual advent of the information age, music management has become the core content of media management in the Internet age. Music is a very important part of life, yet its nature makes it difficult to measure in real time. In the long run, management is very inconvenient, errors exist, and query is difficult. Once there is too much data, manual management is difficult to maintain. With the expansion of the application of information technology, information technology management has been gradually introduced, gradually replacing the manual management mode, and the use of computer systems to manage music station information has the benefits of convenient query, high information accuracy, and saving capital. Improve work efficiency. This system development is mainly aimed at the management of music radio stations, and the functional design is completed according to the needs.

In view of the fact that the early music stations did not have systematic management and modern tools, there were often problems in the process of music stations, and the final result was that the actual efficiency was low, and the work of music stations was time-consuming and laborious, and the expected goals could not be achieved. Because there is no support from the music radio recommendation system, there will always be some inconsistencies in conditions and content in the process of recommending music radio stations. Due to the large number of information materials of music stations, the data processing operation is slow and inefficient, and with the continuous increase of units, the amount of data related to music stations involved in processing is also increasing. Therefore, under such conditions, the traditional management Therefore, it is particularly important to establish a complete and efficient music radio recommendation system that conforms to modern management ideas. The music station recommendation system covers the entire system through the high speed of the computer, and the music station recommendation process is all paperless through the computer. This kind of work is efficient and low in cost, and achieves the purpose of saving manpower to the greatest extent.

It can be said that the development of equipment issues in China has always been underestimated. The reason is that most of my country's understanding of profits only stays in cash inflows or capital increases, while some hidden income and hidden expenditures of the media have no understanding. If we pay attention to it, the data received by the police station when making relevant decisions is often untrue. This kind of error is likely to cause a break in the cash flow of the media and affect the life of the media. Under such a background, equipment management can be said to be receiving more and more attention from the state. The purpose is to support the better development of Chinese manufacturing through the support of relevant policies, and to enhance the competitiveness of Chinese media in this way. Equipment management issues cover a lot of knowledge, and the establishment of a complete equipment management system is conducive to saving costs and creating more profits for the media. At the same time, we all understand the meaning of "cash is king" in the current era. It can be said that the capital chain is the life chain for the media, and no mistakes can be tolerated. The equipment of related companies is often worth tens of millions. Once these equipment have problems and need to be maintained or replaced, the financial pressure on the media is huge. From this, we can fully realize the importance of establishing a complete modern equipment management system. The construction of equipment management systems in my country is still in its infancy, and has the characteristics of low practicability and high cost. How to build a system that meets the requirements of most modern companies and is practical An equipment management system with high reliability, high suitability and low cost will become the focus of the work of relevant personnel.

1.2 Development Status

In the current society, people are paying more and more attention to the development of the network, and automation management technology and information management technology are gradually being used by people. Problems and deficiencies have increasingly been reflected in the previous manual management mode, such as low management efficiency, slow information processing speed, high labor intensity, and low information accuracy. Therefore, how to change this situation, fundamentally help laboratories improve their equipment efficiency, truly liberate labor, and the accuracy and speed of related information processing become the key. It can be seen that the development of a music radio recommendation system is of great practical significance. The modern economy is developing very fast, and the market is even more volatile. It can be said that the current laboratory has to face many threats to survive under such conditions, and it must also improve and upgrade related systems. Then the equipment management of the laboratory requires a reliable system management software to manage the equipment and arrange the use of employees, so it is very necessary to develop an excellent and reliable system.

With the development of the company's business, the number of customers of the company has increased rapidly, and the work pressure and work intensity of the technical service personnel are increasing. In order to reduce the work pressure of the technical service personnel and better serve customers, this business system program is specially compiled.

Since the products of many companies have an expiry date, the idea of ​​writing this program came up. This is a program that facilitates companies to conveniently inquire about their customers' usage. With the continuous improvement of the requirements, another major problem was raised, which confused the technicians. In addition, the problems and solutions that arise during the specific use of the software, as well as the changes to the modules, must be registered. So we got the demand of this system now. This program is set for the after-sales service of quality failures after the sale of software and products, which can greatly improve the after-sales service efficiency and work efficiency of technicians, so that the company can expand the number of users without increasing manpower. , so that the company realizes the information management of the after-sales work.

1.3 Paper structure

The first chapter is the introduction part of the thesis, which mainly introduces the research background, research purpose and significance of the topic.

The second chapter studies the development technology and development tools used in the music radio recommendation system.

The third chapter studies the demand analysis of the music radio recommendation system. According to the characteristics of the system, it analyzes the system structure and development method adopted by the system, as well as the operating environment of the system. It also analyzes the business process and draws the business process and data flow.

The fourth chapter explains the detailed design of the system.

The fifth chapter is the specific realization of the system, introducing the specific realization of each module of the system.

The sixth chapter tests and runs the system on the basis of the previous chapters.

Finally, the system is seriously summarized, so as to have a new prospect for the future.

Chapter 2 Introduction of Main Technologies and Tools

2.1 Django framework

Django is an open source web framework written in Python with complete website capabilities. Using Django, with very little code, Python program developers can easily complete most of the content required by a formal website, and further develop a full-featured Web service.

Django itself is based on the MVC model, that is, the Model (model) + View (view) + Controller (controller) design pattern, so it naturally has the excellent genes of MVC: fast development, easy deployment, high reusability, low maintenance cost, etc. Python plus Django is the best combination for rapid development, design, and deployment of websites.

Django has the following characteristics:

Perfect performance and complete elements: everything that should be available and what can be missing are available, and both commonly used and uncommonly used tools are used. Django provides a large number of features and tools without your own definition, combination, addition, deletion and modification.

Comprehensive documentation: After more than ten years of development and improvement, Django has extensive practical experience and comprehensive online documentation (unfortunately, most of them are in English). When developers encounter problems, they can search the online documentation for solutions.

Powerful database access components: Django's Model layer comes with database ORM components, so that developers do not need to learn other database access technologies (SQL, pyMySQL, SQLALchemy, etc.).

Flexible URL mapping: Django uses regular expressions to manage URL mapping, which is highly flexible.

Rich Template language: Similar to Jinjia template language, it not only has rich native functions, but also can customize template tags.

2.2 MySQL database

MySQL is a relational database management system that keeps data in separate tables instead of putting all the data in one big warehouse, which increases speed and flexibility. The SQL language used by MySQL is the most commonly used standardized language for accessing databases. Because of its powerful functions, it has become one of the most popular database software.

MySQL is an open source small relational database management system developed by Swedish MySQL AB. At present, MySQL is widely used in small and medium-sized websites on the Internet. Due to its small size, fast speed, low total cost of ownership, especially the open source feature, many small and medium-sized websites choose MySQL as their website database in order to reduce the total cost of ownership of the website.

2.3 B/S structure

The system plans to adopt the BS mode because it has obvious advantages over the traditional C/S structure. The B/S mode is also the browser/server mode. Its interface part is displayed on the browser side, and the main work is realized by the server side. The user's request is submitted by the browser side to the server side for processing, and the server side Feedback the processing results to the browser, and draw them on the browser interface for users to view. Adopting the B/S mode can not only avoid the limitation that users must install professional software to develop the system or access the system, but also is more convenient.

2.4 Pycharm development tools

Pycharm is currently one of the most convenient development environments for Python programming, and it is popular in Python integrated development environments for various platform applications. This development environment can not only complete the development of basic application software, but also integrate quite a few plug-ins to assist in application development. Although the software itself is small in size, it has the characteristics of compact structure and comprehensive and powerful functions due to its many functional plug-ins. In the process of development, the requirements for hardware are not high, so that everyone can develop as long as they have a computer with general performance, and everyone can be a creator of software.

There is no perfect development tool, and plug-in is the advantage of Pycharm, as well as its disadvantage. If you need to add the function of assisting development during the development process, you need to find and install the plug-in. Of course, Pycharm itself supports online installation of plug-ins, but since the main plug-ins are created by foreign developers, when we install plug-ins, we need Accessing overseas servers, this is also the reason why online installation of plug-ins is often slow and often fails. We can also use the mirror image of Ali, Taobao, etc., but the operation difficulty is definitely higher than the integration. We can also install locally, which requires the relevant compressed files of the plug-in. It is difficult for beginners to modify the Pycharm installation file.

2.5 Tomcat server overview

Tomcat is a web application server developed by Apache [13]. Because of its advanced technology, stable performance, and most importantly, it is free, it is very popular in Python development, and of course it is also recognized by many software developers.

Tomcat is a lightweight web server. It is free and open source. It is widely used by many small and medium-sized users and there are not many concurrent access users. It is so popular in China. Personally, I think it is more free. By installing Tomcat on the local computer, the local computer can be built as a small server, and the projects on the local server can be accessed through http requests [14]. Tomcat is a servlet container. Many people say that if you want to learn web development well, you must learn servlet well, because the server can allow users to interactively browse and modify data, and help generate dynamic web content, all thanks to servlet.

Chapter 3 System Analysis

3.1 Feasibility analysis

Analyze user needs and data requirements, get a plan, and then set the system development plan, design a physical design plan for each functional module, is it feasible to develop this system? This paper analyzes the feasibility of the development of this system from the aspects of technology, operation and economy.

3.1.1 Economic feasibility

The music radio recommendation system is a tool-based system, which can save a large amount of data collection for staff, is convenient and fast, can greatly improve work efficiency, minimize the workload of administrators, make management as simple as possible, and promote music management . Informatization and modernization, providing necessary information and statistics in a timely manner. Because the whole system adopts the combination of Tomcat+MySQL+Python, these software are free and open source, and the cost of system development is relatively low. Since the system is not complicated, its operation and training costs will not take up a lot of money. It can be predicted that the completion of the system can bring greater economic benefits.

3.1.2 Technical Feasibility

The system uses Windows 10 as the operating platform. The database development platform uses MySQL. The database management system can run on both Windows 7 and Windows 8/10, and provides the function of data replication between databases, which can replace the manual transfer of document data in the existing system. The application software development platform of this system chooses Pycharm .

3.1.3 Operation Feasibility

This system uses the popular development language, namely Django technology. At the same time, all information is displayed in the form of web pages, and the information in the system can be operated on the database in the background to achieve the effect of data update. Users only need to know the basic operation of the computer or be able to use the Internet to use the system. The system layout is relatively simple, and the functional operation is not complicated, which fully meets the needs of the modern market.

3.2 Demand Analysis

Aiming at the existing problems and needs, through the analysis of functional requirements, a digital and informational music radio recommendation system is specially established.

This system mainly includes home page, site management (carousel map, bulletin board), user management (administrator), content management (articles, article types) more management (personal recommendation, music category, popular song list, ranking list, singer, user registration). The requirements of these functional modules are briefly described below.

Table 3-1 Functional Requirements Table

serial number

function name

Functional description

User login

Ensure that users enter the system through identity verification to operate

user registration

Users who do not have an account and want to use the system can use the user registration to detect the user's registration content, and become a user of the system after the information passes the detection

Site Search

Users can fuzzily search for information in the site through various keywords

online message

Ordinary users can add online messages when they log in to the front desk of the system

comment added

Ordinary users select the information to comment and add comments

comment management

The administrator manages the user's comment information, including deletion and modification

Add to Favorites

Ordinary users can select information to add favorites

Collection management

Individual users can manage their favorite records including deleting and modifying

Modify Personal Information

Users can modify personal information according to their current situation

Background login

Only administrators can log in to the background

add music information

Admin adds music information

Edit music information

Admin modify music information

Delete music video information

Admin deletes music information

Add information

The administrator adds information

edit information

Admin modify information

delete information

Administrator deletes news information

3.3 Business Process Analysis

After the analysis, investigation and research of the system functions, it is concluded that the music station recommendation system mainly realizes the management functions of message information and user information. In this way, a business flow chart can be drawn for the system.

The business process of the system is shown in the figure below.

 

Figure 3-2 System business flow chart

3.4 Data flow analysis

According to the characteristics of the business process described above, firstly, the general data processing links and external entities in all aspects are described. According to the top-down principle, the functions are decomposed layer by layer. This process generates a DFD diagram.

The zero-level data process is the most abstract layer in the process. It includes functional modules such as registration and login management, user function management, and retrieval maintenance management. The data storage used in the login registration module includes user account information files and user information files. , the storage required by the user function management module is user dynamic information files, message information files, and music information files. Retrieval and maintenance is to search through the above-mentioned file information through keywords.

The layer 0 data flow diagram of the system is shown in the figure below.

 

Figure 3-4 System data flow diagram (layer 0)

The first-level data flow chart is a refinement of the zero-level data flow chart. Login and registration are subdivided into filling in login registration information and improving information, and user function management is subdivided into user basic function management and user characteristic function management.

The layer 1 data flow diagram of the system is shown in the figure below.

 

Figure 3-5 System data flow diagram (layer 1)

二层数据流程是对一层数据流层图中填写登录注册信息、用户基本功能和用户特色功能的细化。即:填写登录注册信息细化为填制信息、后台审核,用户基本功能细化为收藏操作、留言操作操作,用户特色功能细化为音乐浏览、音乐资讯浏览、音乐点评、收藏音乐、收藏夹管理。

第4章 系统设计

4.1开发环境

  1. 软件体系结构方案:采用B/S模式,B/S代表的是服务器端由Web服务器发放,客户端由浏览器接收的系统,它的前台是Html语言,由浏览器解释。B/S结构可以由Web服务器能够解释的脚本语言如Django。
  2. 操作系统方案:Windows10(旗舰版)操作系统,该系统可以兼容需要的软件,并且具有良好的运行速度,界面良好。
  3. 后台数据库:选用MySQL。MySQL旨在通过数据库加密、更加安全的默认设置、加强的密码政策和细化许可控制、及加强的安全模型等特性,为企业数据提供最高级别的安全性。
  4. 开发工具:前台网页使用Dreamweaver工具,后台逻辑选用Pycharm。
  5. 开发语言:Python语言。
  6. 开发技术:Django+MVC +Html+CSS+JS技术

4.2系统结构设计

本系统使用的角色主要有系统管理员、普通用户,本系统分为系统前台和系统后台,首先在系统前台,游客用户可以经过账号注册,管理员审核通过后,用账号密码登录系统前台,进行首页、公告栏、新闻、最新音乐、个性推荐、热门歌单、排行榜、歌手,在前台用户可以通过标题和类别进行前台信息的搜索,普通用户可以登录个人中心进行个人资料管等功能。

后台主要由管理员使用,以管理员的身份在登录页面输入账号和密码,经过数据库身份验证,验证成功后登录系统主页,可以使用首页、站点管理(轮播图、公告栏)用户管理(管理员)内容管理(文章、文章类型)更多管理(个性推荐、音乐类别、热门歌单、排行榜、歌手、用户注册)等功能操作。同时管理员可以通过关键字搜索可以搜索相应的信息。

系统的功能结构图如下图所示。

 

图4-1系统功能结构图

4.3主要功能模块设计

  1. 用户管理模块

该模块包括普通用户管理和系统用户管理,系统用户主要是普通管理员,对用户信息进行管理,只有普通用户才可在该系统上进行相应的操作。用户对个人信息可进行修改;管理员可对自己的个人信息进行维护,同时可对用户的密码信息进行修改,也可删除系统中的用户

  1. 登录模块

根据用户输入的 Id 和密码到数据库中查找该用户,如果未能找到该用户则做出 提醒“用户名或密码错误”,如果找到该用户,则要判断用户的类别然后根据用户类别进入相应的页面。

  1. 注册模块

当新用户第一次登陆时,要求注册账号。在登陆页点击注册后进入用户注册界面,新用户需要填写本人的手机号、用户名、设置登录密码,之后单击注册,则完成了初步信息的填写

  1. 音乐类别管理模块

(1)音乐添加:必须填写音乐名称、音乐类型、海报、歌手、主演、音乐编号必须是唯一的, 提交后判断某一项是否为填写, 如果是则做出提醒, 填写符合规则后方可添加到数据库。

(2)音乐查询:可以根据音乐编号等信息对音乐进行查询,查询结果可能有多个。

(4)音乐删除:首先找到要删除的音乐(一个或多个),然后删除即可。

  1. 个性推荐管理模块

(1)个性音乐添加:必须填写歌手、上市时间、歌名、封面、歌曲音乐类型、歌词,各项都不能为空。

(2)个性音乐查询:该功能能够显示个性音乐的基本信息,可以根据歌手等信息对音乐做出查询。

(4)个性音乐删除:首先找到要删除的音乐(一个或多个),然后删除即可。

6.评论信息管理模块

评论模块分为用户评论和管理员管理评论信息,用户登录系统后,选择想要评论的音乐,添加评论,管理员查询该评论信息,并有权对其管理,包括删除。

4.4数据库设计

4.4.1数据库设计概述

为了实现系统的功能设计,就要有相应的数据库表设计。根据系统的功能设计要求为各个数据库表设计字段、数据类型、是否为空等的相关信息。在实际调研和需求分析的基础上,对该系统设计数据库。再有系统的需求分析可以看出,本系统有两个角色:普通用户和管理员,他们分别在系统的运行和使用中起着不同的作用。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整性和一致性。数据库中表的设计主要考虑两个方面:一是整个管理系统的所有表中的数据要共享性高、冗余度小、占用最可能小的存储空间。

4.4.2概念设计

概念设计是整个数据库设计的关键,在概念设计阶段,由需求分析得到了E-R模型。E-R图是识别功能模型与数据模型间关联关系的,在主题数据库的抽取和规范化的过程中,采用的是简化的E-R图表示方法,从而避免过繁过细的E-R图表示影响规划的直观和可用性。是对现实世界的抽象和概括,是数据库设计人员进行数据可设计的有力工具,能够方便直接地表达应用中的各种语义知识,令一方面它简单、清晰、易于用户理解。

系统总体ER图如下图所示。

 

图4-10系统总体ER图

4.4.3表设计

概念模型是独立于任何一种数据模型的信息结构。将概念模型转换成逻辑模型,转换的一般原则如下:

(1)一个实体性转换为一个关系模式。实体的属性就是关系的属性,实体的码就是关系的码。

(2)一个1:1联系可以转化为一个独立的关系模式,也可以与任意一端对应的关系模式合并。

(3)一个1:n联系可以转化为一个独立的关系模式,也可以与n端对应的关系模式合并。

(4)一个m:n联系转化为一个关系模式。

本系统设计如下多个表。

auth表:

auth_id

int

11

主键

授权ID

user_group

varchar

64

用户组

mod_name

varchar

64

模块名

table_name

varchar

64

表名

page_title

varchar

255

页面标题

path

varchar

255

路由路径

position

varchar

32

位置

mode

varchar

32

跳转方式

add

tinyint

1

是否可增加

del

tinyint

1

是否可删除

set

tinyint

1

是否可修改

get

tinyint

1

是否可查看

field_add

varchar

255

添加字段

field_set

varchar

255

修改字段

field_get

varchar

255

查询字段

table_nav_name

varchar

255

跨表导航名称

table_nav

varchar

255

跨表导航

option

text

0

配置

create_time

timestamp

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

collect表:

collect_id

int

10

主键

收藏ID

user_id

int

10

收藏人ID

source_table

varchar

255

来源表

source_field

varchar

255

来源字段

source_id

int

10

来源ID

title

varchar

255

标题

img

varchar

255

封面

create_time

timestamp

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

comment表:

comment_id

int

11

主键

评论ID

user_id

int

11

评论人ID

reply_to_id

int

11

回复评论ID空为

content

longtext

0

内容

nickname

varchar

255

昵称

avatar

varchar

255

头像地址

create_time

timestamp

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

source_table

varchar

255

来源表

source_field

varchar

255

来源字段

source_id

int

10

来源ID

forum表:

forum_id

mediumint

8

主键

论坛id

display

smallint

5

排序

user_id

mediumint

8

用户ID

nickname

varchar

16

昵称

praise_len

int

10

点赞数

hits

int

10

访问数

title

varchar

125

标题

keywords

varchar

125

关键词

description

varchar

255

描述

url

varchar

255

来源地址

tag

varchar

255

标签

img

text

0

封面图

content

longtext

0

正文

create_time

timestamp

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

avatar

varchar

255

发帖人头像

type

varchar

64

论坛分类

'

forum_type表:

type_id

smallint

5

主键

分类ID

name

varchar

16

分类名称

description

varchar

255

描述

url

varchar

255

外链地址

father_id

smallint

5

上级分类ID

icon

varchar

255

分类图标

create_time

timestamp

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

hit_list表:

hit_list_id

int

11

主键

热门歌单ID

song_single_name

varchar

64

歌单名

music_type

varchar

64

音乐类型

brief_introduction

text

0

简介

song

varchar

255

歌曲

cover

varchar

255

封面

lyric

longtext

0

歌词

singer

varchar

64

歌手

hits

int

11

点击数

praise_len

int

11

点赞数

examine_state

varchar

16

审核状态

recommend

int

11

智能推荐

seat

varchar

64

座位号

create_time

datetime

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

latest_music表:

latest_music_id

int

11

主键

最新音乐ID

singer

varchar

64

歌手

song_title

varchar

64

歌名

song

varchar

255

歌曲

lyric

longtext

0

歌词

cover

varchar

255

封面

music_type

varchar

64

音乐类型

examine_state

varchar

16

审核状态

recommend

int

11

智能推荐

seat

varchar

64

座位号

create_time

datetime

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

music_category表:

music_category_id

int

11

主键

音乐类别ID

music_type

varchar

64

音乐类型

examine_state

varchar

16

审核状态

已通过'

recommend

int

11

智能推荐

seat

varchar

64

座位号

create_time

datetime

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

notice表:

notice_id

mediumint

8

主键

公告id

title

varchar

125

标题

content

longtext

0

正文

create_time

timestamp

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

personalized_recommendation表:

personalized_recommendation_id

int

11

主键

个性推荐ID

singer

varchar

64

歌手

time_to_market

date

0

上市时间

song_title

varchar

64

歌名

cover

varchar

255

封面

song

varchar

255

歌曲

music_type

varchar

64

音乐类型

lyric

longtext

0

歌词

hits

int

11

点击数

praise_len

int

11

点赞数

examine_state

varchar

16

审核状态

recommend

int

11

智能推荐

seat

varchar

64

座位号

create_time

datetime

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

praise表:

praise_id

int

10

主键

点赞ID

user_id

int

11

点赞人

create_time

timestamp

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

source_table

varchar

255

来源表

source_field

varchar

255

来源字段

source_id

int

10

来源ID

status

tinyint

1

点赞状态1为点赞,0已取消

ranking_list表:

ranking_list_id

int

11

主键

排行榜ID

title

varchar

64

标题

cover

varchar

255

封面

singer

varchar

64

歌手

song_title

varchar

64

歌名

song

varchar

255

歌曲

music_type

varchar

64

音乐类型

hits

int

11

点击数

praise_len

int

11

点赞数

examine_state

varchar

16

审核状态

recommend

int

11

智能推荐

seat

varchar

64

座位号

create_time

datetime

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

score表:

score_id

int

10

主键

评分ID

user_id

int

11

评分人

nickname

varchar

64

昵称

score_num

double

5

评分

create_time

timestamp

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

source_table

varchar

255

来源表

source_field

varchar

255

来源字段

source_id

int

10

来源ID

singer表:

singer_id

int

11

主键

歌手ID

singer

varchar

64

歌手

brief_introduction

longtext

0

简介

cover

varchar

255

封面

debut_time

varchar

64

出道时间

examine_state

varchar

16

审核状态

recommend

int

11

智能推荐

seat

varchar

64

座位号

create_time

datetime

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

slides表:

slides_id

int

10

主键

轮播图ID

title

varchar

64

标题

content

varchar

255

内容

url

varchar

255

链接

img

varchar

255

轮播图

hits

int

10

点击量

create_time

timestamp

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

upload表:

upload_id

int

11

主键

上传ID

name

varchar

64

文件名

path

varchar

255

访问路径

file

varchar

255

文件路径

display

varchar

255

显示顺序

father_id

int

11

父级ID

dir

varchar

255

文件夹

type

varchar

32

文件类型

user表:

user_id

mediumint

8

主键

用户ID

state

smallint

1

账户状态

user_group

varchar

32

所在用户组

login_time

timestamp

0

上次登录时间

CURRENT_TIMESTAMP

phone

varchar

11

手机号码

phone_state

smallint

1

手机认证

username

varchar

16

用户名

nickname

varchar

16

昵称

password

varchar

64

密码

email

varchar

64

邮箱

email_state

smallint

1

邮箱认证

avatar

varchar

255

头像地址

create_time

timestamp

0

创建时间

CURRENT_TIMESTAMP

user_group表:

group_id

mediumint

8

主键

用户组ID

display

smallint

4

显示顺序

name

varchar

16

分类

description

varchar

255

描述

source_table

varchar

255

来源表

source_field

varchar

255

来源字段

source_id

int

10

来源ID

register

smallint

1

注册位置

create_time

timestamp

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

user_registration表:

user_registration_id

int

11

主键

用户注册ID

user_account

varchar

64

用户账号

examine_state

varchar

16

审核状态

recommend

int

11

智能推荐

seat

varchar

64

座位号

user_id

int

11

用户ID

create_time

datetime

0

创建时间

CURRENT_TIMESTAMP

update_time

timestamp

0

更新时间

CURRENT_TIMESTAMP

第5章  系统实现

5.1登录模块的实现

音乐电台推荐系统的系统入口就是用户登录功能,在浏览器输系统地址跳转至系统前台首页,系统前台的登录窗口在首页右面,包括用户名、密码、用户点击登录按钮,则进行登录验证。

登录流程图如下所示。

 

图5-1登录流程图

系统登录界面如下所示。

 

图5-2系统登录

5.2用户子系统模块的实现

5.2.1用户首页的实现

在音乐电台推荐系统的用户首页,主页有用户登录页面,以及音乐信息的展示等,在首页的导航栏中可看出,该系统主要有首页、公告栏、新闻、最新音乐、个性推荐、热门歌单、排行榜、歌手搜索关键词等主要模块。

如下图所示为系统的用户首页界面。

 

图5-3用户首页

5.2.2注册模块的实现

这块程序首先根据所取得的表单中的用户名查询数据库中是否有相同用户名的记录,如果数据库存在相同的用户名,则提示用户名已存在,否则,打开记录集并添加一条新的记录,然后系统默认要给用户发送注册成功的提醒。

用户注册流程图如下所示。

 

图5-4用户注册流程图

用户注册界面如下图所示。

 

图5-5用户注册

5.2.3新闻模块的实现

用户点击新闻按钮进入新闻,自动播放音乐,可查看歌手、歌曲、封面、歌名、歌词、音乐类型等功能,点击歌曲按钮可以开始或暂停歌曲,新闻模块如下所示。

 

图5-6新闻模块界面图

5.2.4个性推荐模块的实现

  用户点击个性推荐按钮进入个性推荐,歌曲自动播放,可查看歌手、歌曲、封面、歌名、歌词、音乐类型点赞数、评论等功能,点击歌曲按钮可以开始或暂停歌曲,个性推荐模块如下图所示。

 

图5-7个性推荐模块界面图

5.3管理员子系统模块的实现

5.3.1用户管理模块的实现

系统用户管理主要是对普通管理员的添加,旧用户可删除,也是从下拉菜单中找到对应的用户名称将其删除。不论是新用户添加还是旧用户的删除,这个权限只有管理员具有。

系统用户管理界面如下图所示。

 

图5-8系统用户管理

5.3.2最新音乐模块的实现

最新音乐模块管理员输入歌手、歌曲、封面、歌名、歌词、进行添加最新音乐,根据需要可以添加或修改最新音乐功能图如下所示。

 

图5-9最新音乐界面图

5.3.3热门歌单模块的实现

热门歌单添加功能输入歌单名、音乐类型、封面、歌曲、歌词、的提交添加、可根据需要删除和修改。

热门歌单添加如下图所示:

 

图5-10热门歌单界面图

5.3.3排行榜模块的实现

排行榜添加,功能主要指对其输入标题、封面、歌手、音乐类型、封面、歌曲、歌词、提交添加排行榜,并根据需要删除和修改。

排行榜添加如下图所示:

图5-11音乐排行榜页面

第6章  系统测试

6.1软件测试

在设计系统的过程中,存在一些错误是不可避免的。For语句语法错误,运行的提示,并要求立即纠正,因此,容易发现和纠正错误等。但另一种类型的错误是程序执行时由于不正确的操作或对某些数据计算公式的逻辑错误导致错误的结果。这种错误的隐蔽性强,有时会出现,有时不出现,因此,这种误差动态屏幕耗时。

6.2功能测试

功能测试就是对产品的各功能进行验证,根据功能测试用例,逐项检测,检查产品是否达到用户要求的功能。下面列出的测试用例是基于需求分析阶段的用例描述而进行的设计。

下面将通过表格的形式介绍针对本系统每个功能模块所进行的功能测试。

1.注册模块功能测试,如下表所示。

表6-1注册测试

测试用例编号

测试用例描述

前提条件

测试步骤

预期结果

实际结果

状态

用户注册

用户打开注册界面

输入合适的用户名,密码为空

无法注册

提示密码不得为空,无法注册

正常

用户注册

用户打开注册界面

输入不合适的用户名、2次相同的密码

无法注册

提示用户注册失败

正常

用户注册

用户打开注册界面

输入合适的用户名,两次密码不一致

无法注册

提示用户名不得为空,无法注册

正常

用户注册

用户打开注册界面

输入的用户名为空

无法注册

提示用户名不能为空

正常

用户注册

用户打开注册界面

输入合适的用户名和两次相同的密码

正常注册

注册成功

正常

2.登录模块功能测试,如下表所示。

表6-2登录测试

测试用例编号

测试用例描述

前提条件

测试步骤

预期结果

实际结果

状态

登录系统

用户打开登录界面

输入正确的用户名,密码为空

无法登录

提示密码不得为空,无法登录

正常

登录系统

用户打开登录界面

输入正确的用户名,输入错误密码

无法登录

提示密码不正确,无法登录

正常

登录系统

用户打开登录界面

输入正确的密码,用户名为空

无法登录

提示用户名不得为空,无法登录

正常

登录系统

用户打开登录界面

输入正确的密码,错误的用户名

无法登陆

提示用户名不正确,无法登录

正常

登录系统

用户打开登录界面

用户名及密码都为空

无法登录

提示用户名和密码不得为空,无法登录

正常

登录系统

用户打开登录界面

用户名及密码都输入错误

无法登录

提示用户名和密码正确,无法登录

正常

登录系统

用户打开登录界面

输入正确的用户名和密码

正常登录

进入主界面

正常

3.修改密码模块功能测试,如下表所示。

表6-3修改密码测试

测试用例编号

测试用例描述

前提条件

测试步骤

预期结果

实际结果

状态

修改密码

用户打开修改密码界面

输入正确初始密码和2次相同的新密码

密码修改成功

密码修改成功

正常

修改密码

用户打开修改密码界面

输入错误的原始密码

密码修改失败

密码修改失败

正常

修改密码

用户打开修改密码界面

输入正确初始密码和2次不相同的新密码

密码修改失败

密码修改失败

正常

4.个人中心功能测试,如下表所示。

表6-4个人中心测试

测试用例编号

测试用例描述

前提条件

测试步骤

预期结果

实际结果

状态

用户信息修改

用户已登录,进入个人中心,且打开个人信息界面

输入内容不合法或必填项为空

修改失败

提示输入内容非法

正常

用户信息修改

用户已登录,进入个人中心,且打开个人信息界面

输入内容合法

修改成功

提示修改成功

正常

6.3测试结果

通过对音乐电台推荐系统整个流程管理的测试,发现了许多无法实现的功能并及时得到改正和实现,为音乐电台推荐系统的发布奠定了基础。此系统中各模块的功能都基本实现,不过还存在着许多不足,在以后的学习中通过测试还需加强和完善。

第7章  总结

本文主要研究了音乐电台推荐系统的设计与实现。本次论文主要研究的内容主要包括:

(1)分析研究了本课题的开发背景和课题的研究意义。

(2)对此次毕业设计进行了详尽的需求分析,并根据实际需求,分析了其数据字典。

(3)概要设计了系统的功能模块,详细设计了系统所使用的数据库表,并研究了该系统的ER图。

(4)详细介绍了该平台要实现的功能,构建了此系统。

从技术上来说,整个系统的基本实现环境是Win10操作系统搭配Pycharm下的Python环境,数据库的建立使用MySQL软件,系统开发使用Pycharm软件,用Python语言进行系统的设计和开发,图片采用Photoshop CS6处理,使整个系统在视觉上和功能上尽量做到完整和美观。系统界面设计美观大方,功能较为完整,技术较先进且具有一定现实意义。

在摸索中前进。对MySQL数据库的使用,如何设计后台表结构,使得系统更加合理,健壮,是面临的又一个难题,通过查找相关资料,以及在充分的需求分析基础上,解决了以上问题。若条件允许,系统的功能模块能够更丰富,某些模块的功能也能更完善,用户之间权限的处理逻辑性也能更强。今后在改善客观条件的情况下,本系统还需要进一步进行研究开发。

致  谢

经历了几个月的毕业设计之旅,遭遇了无数难题与挑战,几经波折后,近乎要摧毁我当初选择这个题目的信心。好在我的导师一直坚持对我悉心支持,并对此套系统提出了诸多改善意见,解决了我所遇到的众多难题,音乐电台推荐系统也得以在这样的境况下圆满完成。老师给予了我正确的指导和极大的帮助,这不仅仅使我获得了足够多的开发经验,更使我在系统设计过程中少走了许多的弯路,巩固了以前所学的知识,提高了应用能力,这使我对以后的工作也信心满满。

敬业的工作态度都给予了我极大的鼓励与帮助。对于提出的问题和遇到的困难都给予细心的解答和真诚的帮助,再次表示衷心的感谢。我还要对学院及系里的各位领导、老师们表示谢意,在这次毕业论文期间给我们提供了良好的学习和生活环境,并给予软硬件的支持,使得我的系统设计工作及论文撰写工作更加顺畅、便利。最后我还要感谢所有为我的毕业设计提出指导意见的各位老师、同学。

参考文献

[1]田杰,胡秋霞,司佳豪.基于深度信念网络DBN的音乐推荐系统设计[J].电子设计工程,2021,29(23):162-165+170.DOI:10.14022/j.issn1674-6236.2021.23.033.

[2]华泽,叶雨航.协同过滤算法及在个性化音乐推荐中的应用[J].现代计算机,2021(22):43-46+54.

[3]Ben Sassi Imen,Ben Yahia Sadok,Liiv Innar. MORec: At the crossroads of context-aware and multi-criteria decision making for online music recommendation[J]. Expert Systems With Applications,2021,183:

[4]彭立涵. 基于大数据平台的音乐推荐系统的设计与实现[D].哈尔滨理工大学,2021.

[5]曲天晟. 融合时间上下文信息的个性化音乐混合推荐算法研究[D].渤海大学,2021.DOI:10.27190/d.cnki.gjzsc.2021.000368.

[6]Anand R,Sabeenian R.S,Gurang Deepika,Kirthika R,Rubeena Shaik. AI based Music Recommendation system using Deep Learning Algorithms[J]. IOP Conference Series: Earth and Environmental Science,2021,785(1):

[7]陈维玮. 基于多任务学习和用户行为序列的音乐推荐系统设计与实现[D].北京邮电大学,2021.DOI:10.26969/d.cnki.gbydu.2021.001574.

[8]沈国明. 基于原始标签的音乐推荐系统的设计与实现[D].北京邮电大学,2021.DOI:10.26969/d.cnki.gbydu.2021.002610.

[9]Kim Youngjun,Jeong Hayoung,Cho JunDong,Shin Jitae. Construction of a Soundscape-Based Media Art Exhibition to Improve User Appreciation Experience by Using Deep Neural Networks[J]. Electronics,2021

[10]曾凡聪. 个性化音乐推荐系统[D].电子科技大学,2021.

[11]宋雪峰. 基于深度学习的个性化音乐推荐系统设计与实现[D].黑龙江大学,2021.DOI:10.27123/d.cnki.ghlju.2021.001626.

[12]黄川林,鲁艳霞.基于协同过滤和标签的混合音乐推荐算法研究[J].软件工程,2021,24(04):10-14.DOI:10.19644/j.cnki.issn2096-1472.2021.04.003.

[13]Seaver Nick. Everything lies in a space: cultural data and spatial reality[J]. Journal of the Royal Anthropological Institute,2021,27(S1):

[14] Fu Yue. Research on Music Recommendation Algorithm Based on Collaborative Filtering [D]. Shenyang University of Technology, 2021

[15] Peng Bing. Talking about the Application of MVC Design Pattern in Django Program [J]. Information and Computer (Theoretical Edition), 2019 (11): 104-105.

[16] Zhao Hui, Xiong Wenjun. Research on Django's Network Database Connection Technology and Application [J]. Computer Knowledge and Technology, 2019, 15(17): 25-26.

[17] Jiang Huihui. Application Analysis of Computer Software Development in Multiple Fields [J]. Science and Technology Economic Market, 2019(04):12-13.

[18] Lu Mudan. Design of Intelligent Course Arrangement System in Universities Based on Django Technology [J]. Computer Products and Circulation, 2019(07): 210.

[19] Chen Qiuling. Design and Implementation of Book Shopping Website Based on Python Web [J]. Computer Knowledge and Technology, 2019,15(16):36-38.

[20] Mao Jiaqi. Realization of Django-based web photo album system [J]. Information Recording Materials, 2019, 20(06): 118-119.

  Get this source code for free, please pay attention to like + private message



Category of website: technical article > Blog

Author:Disheartened

link:http://www.pythonblackhole.com/blog/article/25320/7de86531f7e781c7df93/

source:python black hole net

Please indicate the source for any form of reprinting. If any infringement is discovered, it will be held legally responsible.

19 0
collect article
collected

Comment content: (supports up to 255 characters)