# BookRecommandSystemWeb-with-Django **Repository Path**: lin_g_cheng/BookRecommandSystemWeb-with-Django ## Basic Information - **Project Name**: BookRecommandSystemWeb-with-Django - **Description**: 图书管理系统-基于Web,使用python的Django框架开发,数据使用Scrapy进行采集。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2020-02-20 - **Last Updated**: 2021-01-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 2018/5/22更新 # python选修课期末作业 ---- 图书推荐系统 后端使用python框架Django,调度任务的程序运行基于python高级调度框架APScheduler,使用Scrapy框架进行数据的爬取,彩蛋游戏使用unity2D进行开发 项目描述: 需求分析: 1.学校图书馆借的书都很容易忘记还,这个时候需要有个软件提醒什么时候还书,或者自动帮我进行书籍的续借(免受罚款的灾难:-D) 2.比较难知道学校的新书有什么,需要有一个推送新书的程序告诉我,比如说我关注的一个关键词有python,就会在新书出现python关键字的时候给我推送特别关注的新书 3.馆藏空闲通知,有时候,我想要借的书给别人借走了,然后就会特别angry,:-|,这个时候,就特别想要一个程序,可以及时通知我那本书什么时候还回来了 4.同类型图书推荐,学校图书馆借阅系统并没有这个功能,有时候我看到一本好书,然后就会想要找跟他类型相同(内容相似)的书,这个时候就需要同类型图书推荐系统,比如图书馆关于shader方面的书很少,这个时候我看到一本关于shader的书,就会特别想知道跟这本书相似的有什么书之类的~~~ 5.高级搜索功能,学校图书馆借阅系统只能通过出版年份/作者进行排序,这样只能通过一本书的名字来判断好坏,所以,急需增加一本知道图书好坏的功能,所以增加了通过豆瓣评分排序,豆瓣评分人数排序,豆瓣评论人数排序等排序功能 6.书籍详情页面显示的内容太少了,学校图书馆的系统,最多显示内容简介跟书名,其他信息都要到其他平台进行搜索,这太麻烦了,所以,想到了,在书籍详情页面增加很多内容,大致有,目录,内容简介,作者,还有评论,关于评论这一部分,想到了通过两种方式来显示,一种是普通的显示,也就是一条一条评论的显示,一种是直接全部文字的词云显示,可以让读者第一时间知道其他人对这本书的第一印象 7.同时需要注意的是,所有关于通知的内容(续借,馆藏空闲通知,新书速递)都通过APScheduler调度来完成,也就是,一天运行一次,或者一个月运行一次,避免给服务器造成太大压力。 细化功能(按照页面---需要的功能对功能进行细化): 搜索页面: 1.评分五角星的绘制 √ 2.登录功能 √ 3.登录后的搜索界面改变,同时可以设置自动续借等功能 √ 4.每本书的样式显示(包含评分,书名,作者等) √ 5.侧边栏的显示: √ a.给出常用标签(该名用户经常进行搜索的关键词) b.给出缩小范围的年份示例(这个用于缩小范围的年份通过后端获得该页数据的全部年份获得) c.给出用于缩小范围的分类示例(这个分类示例通过该页的索书号获得,这个索书号只拿/之前的,比如TP312.561/T,就只显示TP312.561) d.给出本次查询点击率最高的书籍 6.分页功能 √ 7.关键字搜索排序功能,通过对给定的字段搜索,给出按照指定排序规则排好序的书籍列表 √ 8.对自动续借功能的设置,设置完后,界面上打勾,后端使用调度框架 APscheuled每隔一天看一次续借日期是否到期 √ 9.对新书速递功能的设置,设置完后,界面上打勾,后端是使用调度框架APSchedule每隔一个月重新爬取一次图书馆,爬取到的新书通过邮箱推送给用户(如果用户设置了特别关注名单,那么推送时推文会不一样)√ 10.自动补全搜索,当键入某一个字母时,(使用ajax)通过判断获得跟输入的最相似的10个字符串,然后在下方显示出来。 登录页面: √ 1.Gif验证码 2.第一次登录时填写邮箱,并通过邮箱发送邮箱验证码 √ 3.使用cookie保存登录状态 书籍详情页面: 1.显示书籍详情信息(封面,书名,评分,内容,目录) √ 2.显示书籍评论,评论分为文字版和词云版: a.文字版评论,正常评论功能,普通的分页,普通的评分,普通的发表评论 b.词云版评论,将文字版评论全部加起来(现场算),然后使用wordcloud画出印象图 3.同类型书籍推荐功能:在这里偷个懒,使用python第三方自然语言识别库,识别各本书之间的相似度,选出相似度最高的5本书进行显示 用户设置界面: √ 1.设置自动续借的细节功能:比如在图书到期前x天通知我 2.设置新书速递的细节功能:比如设置一个我的特别关注列表,新书速递时,给出的推文会变化。 √ 3.查看馆藏空闲通知,查看已经设置了多少个对图书馆的馆藏的空闲通知。 首页: √ 同搜索界面 √ 用户详情界面: 1.查看用户已经借了多少本书 2.为用户生成一份读书报告 404彩蛋界面: 通过某些不为人知的操作,可以显示出用unity做的彩蛋游戏。