标题 | 基于Django实现四方博客 |
范文 | 谢建华 梁杰华 郑剑 摘要:基于Django和爬虫的综合型博客系统开发设计中,使用Pycharm,主要使用的是python语言,同时,页面文件的编写和一些交互的实现也涉及Html,JavaScript。技术方面,使用的python中的稳定框架Django进行开发,在选用数据库时,选用关系型数据库mysql。该次设计主要是实现一个综合性能的博客系统,系统角色有游客,用户,管理员,超级管理员,游客可以实现内容查看,用户和管理员可以对博客文章的增删改查,对评论以及多重回复评论的实现,对文章进行标签设计登,超级管理员可以对用户进行权限控制等。 “四方博客”,顾名思义,“四方”即意味着这是一个综合型博客平台,广纳各方博主见闻并分享于此平台,达到信息共享,交流学习。 关键词:Python;Django;博客;系统;爬虫 中图分类号:TP393? ? ? 文献标识码:A 文章编号:1009-3044(2019)23-0051-04 开放科学(资源服务)标识码(OSID): Implementation of Quadripartite Blog Based on Django XIE Jian-hua, LIANG Jie-hua, ZHENG Jian (Jiangxi University of Science and Technology, Ganzhou 341000, China) Abstract: In the development and design of integrated blog system based on Django and crawler, Pycharm is mainly used in Python language. At the same time, the compilation of page files and some interactive implementations also involve Html and JavaScript. Technically, the stable framework Django in Python is used for development. When selecting database, the relational database mysql is used. This design is mainly to achieve a comprehensive performance of the blog system, the system role of tourists, users, administrators, super administrators, tourists can achieve content viewing, users and administrators can add, delete and modify blog articles, comments and multiple replies to the implementation of comments, tag design for articles, super The level administrator can control the user's rights and so on. "Quartet Blog", as its name implies, "Quartet" means that it is a comprehensive blog platform, which includes all bloggers'opinions and stories, so as to achieve information sharing and exchange of learning. Key words: Python; Django; blogs; systems; Crawlers 本次設计定位为综合型博客平台,针对本系统不同的角色,提供不一样的功能接口。设计的角色有游客,普通用户,普通管理员,超级管理员四个,通过良好的接口方法设计,达到使处在游客角色的人只能够对本系统提供的文章信息以及博主信息进行观看,处在普通用户或管理员的人能够查看并发布并管理自己的文章,超级用户可以对整个系统进行控制。设计的模块有前台显示模块,前台管理模块,系统后台管理模块,在这设计过程中,使用Django框架自带的一些组件和自定义的如中间件,自定义上下文,自定义系统模型,自定义验证器等等,来完成各大功能模块的编写。 前台首页渲染使用数据库技术以及爬虫技术,完成本系统爬取CSDN热门博客内容进行展示以及使用爬虫可视化技术展示当地未来几天天气情况。系统首页人人可见,前台用户注册在用户注册时提供短信码验证技术,在其他信息没有错误的情况下,当手机号与接收的验证码都没问题才能注册成功。注册成功的用户在登录后可以进入到自己的文章管理后台,可以管理文章,标签,评论,分类,相较于游客这一角色,注册后的用户具有评论,点赞的权力,以及管理文章的权力,换言之,用户担任着两重角色,即普通用户和普通管理员的角色。超级管理员即可以对整个系统的已发布的信息进行存储,以及修改某个用户的权限,同时,超级管理员也可以以普通管理员的身份进行发布并管理文章,换言之,超级管理员担任着三重角色。本项目旨在通过综合型博客平台达到信息共享以及学术交流的目的。 1 系统功能结构的设计 1.1 系统管理端功能 如图1所示整个系统后台具有如下功能: 1)超级管理员管理整个系统的已注册用户,可对用户进行批量操作,设置用户权限,分组等; 2)超级管理员管理整个系统的评论信息,可批量操作评论,使非法评论得到控制; 3)系统可以让超级管理员管理整个系统已发布文章。 1.2 Web用户端的主要功能介绍 Web用户端分为前台模块和前台管理模块,如图2和图3所示,主要具有以下功能: 1)前臺模块下分为前台信息展示模块和注册登录模块;信息展示模块主要提供给用户浏览全站博客或个人博客园等信息的接口,系统首页使用爬虫渲染数据,注册登录模块即为管理模块奠定基础,注册采用手机短信验证,登录提供验证码验证; 2)前台管理模块提供用户管理自己发布的所有信息,提供用户作为管理员的角色接口。 2 系统实现的关键技术 2.1 使用短信验证注册,提高系统信息真实性 作为一个综合型博客系统,需要对注册的用户信息进行真实性考量,防止在平台随意发布一些违规信息,虽然对违规信息可由管理员进行控制账号权限,但仍需要从源头上将系统用户进行最基本的过滤,只有注册时能够通过全部验证的才能注册成功,全部验证包括邮箱,手机号,短信验证码等。根本上可以控制注册的用户为真实存在的信息的手段是使用短信验证技术,从而提高系统信息真实性,为平台发布合法内容奠定最基础的控制。短信验证时流程图4如下: 2.2 用户登录后可以管理自己发布的所有 由于系统定位为综合型博客平台,故在角色设计上,用户可以作为自己的管理员,管理自己发布的所有,即对自己的文章,评论,分类,标签等进行增删改查的操作,达到用户的双重角色,既是用户又是管理员,能够对自己的发布进行控制,达到减轻系统管理工作的目的。具体流程图如图5所示: 2.3 系统后台可以管理整个系统 系统后台提供超级管理员访问的入口,为了使平台发布的内容以及对注册的用户进行行为控制等,必须使平台拥有自己定义的管理员,对系统中各个用户进行控制,对系统中全部文章进行控制,对系统中全部评论进行控制等等。设计系统后台可以管理整个系统就是实现这一目的的手段。具体如图6所示: 3 系统界面设计 四方博客平台是一款综合型博客平台,并使用了爬虫技术实现首页博客热门文章的抓取并显示,主要提供发布及展示以及管理等功能,系统大致划分为四个模块,即用户注册登录,信息展示,用户管理自己发布,系统管理用户。 1)用户注册登录模块:注册提供用户参与到系统信息构建的入口,提升用户权限,使用户能够具有比游客这一角色更丰富的权限;登录提供用户发布信息以及管理信息的入口,只有在登录状态下,才能够进行数据管理。 2)信息展示模块:此模块为用户提供系统首页博客文章的渲染,其中使用了分页对数据进行良好的呈现,此外,还提供有个人博客园信息的展示,文章详情信息的查看等的接口。 3)用户管理自己发布模块:用户个人模块中各一部分,提供用户对不同信息的操控,管理的对象是自己所发布的所有内容即文章,评论,标签,分类等。 4)系统管理用户模块:提供对平台控制的接口,能够使平台的信息安全稳定的呈现给访问站点的用户。 4 小结 本系统开发使用python中的Web框架即Django进行开发,能够通过简短的代码编写,实现系统构建,经过测试,系统各个功能模块都能正常运行,能够提供注册到平台的用户发布文章的权限,其中,发布文章页面使用插件,使链接,图片等都不会失效或错位。使用Django开发综合型博客平台,设计系统角色,着手系统部署等,从实践中掌握技术的使用,理解接口如何编写等,便是开发此系统的意义所在,同时,此系统可供学术交流的目的。 参考文献: [1] 王启明, 罗从良. Python3.6零基础入门与实战[M]. 北京: 清华大学出版社,2018. [2] 刘长龙. Python高效开发实战[M]. 北京: 电子工业出版社,2016. [3] 王珊, 萨师煊. 数据库系统概论[M]. 5版. 北京: 高等教育出版社, 2014(9): 130-185. [4] Anany Levitin.算法设计与分析基础[M]. 3版. 潘彦, 译. 北京: 清华大学出版社, 2015. [5] 王友钊, 黄静. Django开发宝典[M]. 北京: 清华大学出版社,2017. 【通联编辑:谢媛媛】 |
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。