涂远杰 郑剑

摘要:该博客系统是一款分享型博客,注重个人的学习心得、生活等方面的记录。后台基于Python中的Flask框架开发,还涉及爬虫,数据库使用的是轻型的SQLite,同时,前端页面的实现涉及HTML、JavaScript等。系统角色分为游客、用户、管理员,游客只能进行查看操作,用户可以发表并管理博客和评论、喜欢他人的博客,用户还可以在个人中心编辑个人信息等操作,管理员可以对所有博客和评论等进行增删改查操作。博客编辑与查看使用的是富文本,涉及MarkDown语言。

关键词:博客系统;爬虫;Python;Flask;HTML

中图分类号:TP393 文献标识码:A

文章编号:1009-3044(2020)15-0109-03

在当今这个信息化的时代下,人们更多的是通过网络来记录自己的生活或者学习心得等方面的内容,而该博客系统会是一个较好的生活分享、学术交流的平台。该系统项目设计时确定三种系统角色,即游客、用户、管理员,通过设计不同的接口来实现不同的功能。对于游客,只能进行查看操作,如浏览首页、查看其他用户发布和喜欢的博客等查看操作。而对于用户,还可以撰写博客,管理博客,喜欢其他人的博客,发表评论等。管理员则是对整个博客系统进行管理。整个系统是基于Pvthon中的Flask框架来实现的,还结合了爬虫技术,主要应用于首页,爬取微博的热搜榜,实时显示热度前十的关键词链接。在用户注册方面,为避免出现僵尸型用户,注册采用的是邮箱注册,只有正确的邮箱才能进行注册确认,从而成功登录系统。而且为保护用户账号安全,采用pbkdf2和sha256算法来对密码进行加密。在撰写博客方面,使用的是富文本编辑器,而且为了有更好的用户体验,编辑博客时会有内容效果的实时预览。

1系统功能结构的设计

1.1系统后台管理端功能

如图1所示系统后台管理端具有如下功能:

1)对已注册的用户的信息进行修改;

2)对所有的博客进行修改和删除操作;

3)对所有的评论进行删除操作。

1.2网页用户端的主要功能介绍

如图2所示网页用户端具有如下功能:

1)用户通过邮箱注册账号,需填写正确的邮箱以接收验证邮件;如果已有账号可直接登录,在登录页设有“忘记密码”功能;

2)用户成功登录系统后,在个人中心页面可以修改个人资料或修改密码,还可以撰写博客,以及管理已发表或已喜欢的博客;

3)用户可以在首页查看或喜欢他人发表的博客,以及评论博客,在博客详情页可以管理自己发表的评论,还可以在首页浏览从微博爬取过来的热搜,链接可点击。

2系统实现的关键技术

2.1邮箱验证注册减少僵尸型用户

在如今繁杂的网络世界中,许多社交平台有着大量的僵尸型用户,也就是不活跃的用户或者虚假用户,也存在许多的恶意注册,以达到刷点赞数等其他目的,从而对系统的真实用户造成不良体验等。所以本系统采用邮箱验证注册来减少僵尸型用户的产生,注册用户需填写正确且有效的邮箱,系统会发生一封验证邮件到该邮箱,验证邮件中携带着系统随机产生的一个序列号链接,只有收到邮件并点击链接才能完成验证,从而成功注册。具体注册验证流程如图3所示。

3系统界面设计

该博客网站系统是一款分享型博客系统,注重个人学习心得等方面的记录,在为他人提供帮助的同时,也从他人那里获取到对自己有用的知识,营造良好的学习氛围。

1)用户注册登录模块:用户填写相关信息进行注册并登录,在登录页还设有“忘记密码”功能。

2)首页展示模块:在该页面,用户可以浏览他人发表的博客,并对其进行查看、喜欢等操作,还可以浏览微博实时热点。

3)用户个人中心模块:该模块包含个人资料、撰写博客、管理自己发表及喜欢的博客。

4)后台管理模块:在该模块管理员可以对用户、博客、评论进行管理。

4结束语

经过测试,该系统各个功能模块运行都很稳定。该系统开发使用的是Pvthon中的Flask框架,并且数据库使用的是SQLite,两者都是轻便型工具,所以大大缩短了代码的编写量。而且该系统数据库保存密码的字段使用pbkdf2和sha256算法来加密的,所以大大提高了用户账号的安全性。虽然該系统功能基本完成,但仍然需要继续完善。

python flask实现博客系统_基于Flask的博客网站设计与实现相关推荐

  1. jsp教学网站百度文库_基于JSP的精品课程网站设计与实现

    龙源期刊网 http://www.qikan.com.cn 基于 JSP 的精品课程网站设计与实现 作者:窦立君 张金凤 吴尧 来源:<电脑知识与技术> 2016 年第 28 期 摘要:该 ...

  2. python搭建博客系统_基于python3.7和django2.1的多人博客系统

    主要功能: 1.用户注册,登录,删除,以及使用第三方库password_reset来重置用户密码 2.文章的发布,修改以及删除,支持markdown以及代码高亮 3.留言板系统 4.支持文章的多人互动 ...

  3. python界面实现点餐系统_基于PythonFlask的网上点餐系统管理员后台开发

    基于PythonFlask的网上点餐系统管理员后台开发(任务书,开题报告,论文16000字,参考代码) 摘要 本文主要基于PythonFlask开发网上点餐系统管理员后台,本系统与微信小程序结合,专门 ...

  4. python开发出来的crm系统_基于Django实现的CRM系统

    前言:Django是一个python大而全的前端框架,Django自带的admin也是一个不错的信息管理系统,功能多,可拓展性强.那么,我们仿照Django-admin能不能自己写代码实现admin的 ...

  5. flask echarts词云可视化_基于flask框架的高校舆情分析系统

    系统分析: 高校舆情分析拟实现如下功能,采集微博.贴吧.学校官网的舆情信息,对这些舆情进行数据分析.情感分析,提取关键词,生成词云分析,情感分析图,实时监测舆情动态. 系统设计: 前端:采用layui ...

  6. 基于python的智能安防系统_基于Python语言的智能家居系统研究

    龙源期刊网 http://www.qikan.com.cn 基于 Python 语言的智能家居系统研究 作者:张微微

  7. 基于python的毕业论文邮箱收发系统_基于python语言的自动化邮件发送总结

    发邮件功能 有很多种,我目前 使用的是python的smptlib 模块提供的发邮件功能,可以使用里面的SMTP对象的sendmail方法发邮件. # -*- coding: utf-8 -*- '' ...

  8. python html5 便利店收银系统_基于Python的Django框架实现的中式快餐厅管理信息系统网站...

    1 初步调研 随着餐饮业的连锁和国外餐饮巨头的进入,餐饮业的竞争将越来越激烈:要想在竞争中处于不败之地,必须在管理.服务等方面提高服务管理意识.面对当前餐饮业普遍的产业化程度低,管理手段.管理技术落后 ...

  9. java个人博客系统代码下载_java个人博客系统代码

    利用现存框架可以更快开发系统.所以选 择 Java 技术作为 blog 的开发工具. 为了增加系统的吞吐量,提高并发 +申请认证 文档贡献者 胡进全 计算机网络管理员 ...... javaweb课程 ...

最新文章

  1. 【python教程入门学习】Python实现自动玩贪吃蛇程序
  2. 头条Android面试题,史上最全的Android面试题集锦(五)
  3. python 报错 TypeError: type ‘types.GenericAlias‘ is not an acceptable base type
  4. Visual stuidio 快捷键的修改、查询
  5. Oracle查询和解锁表
  6. Spring @Autowired注解在非Controller注入为null,Springboot @Reference注入为null解决方案
  7. Centos 7 密码重置
  8. 电子病历实体识别数据处理、多个文件读取
  9. linux访问samba命令,smbclient命令
  10. 在线医疗和教育,正在争抢未来!
  11. 根据经纬度获取精确地址 (百度地图)
  12. 线性代数 --- 用内积重新定义矩阵的转置(个人学习笔记)
  13. 回顾2012年重大安全事件
  14. ES6字符串、对象、数组不常见但实用的API方法
  15. JavaScript 函数练习题
  16. python视频批量抽帧脚本更新
  17. 防热服的设计数学建模_高温作业专用服装设计各位厂家提供点解题思路 2018年全国大学生数学建模A题...
  18. 区块链技术在知名平台的应用
  19. npm install electron 卡在 Downloading
  20. 日本人为什么不创业?

热门文章

  1. C51单片机中断定义
  2. 本地mysql打不开的解决方法
  3. [转]解决STM32开启定时器时立即进入一次中断程序问题
  4. 解决request中文乱码问题
  5. 解决Windows10下无法对docker容器进行端口访问(端口映射的问题)
  6. 解决eclipse报PermGen space异常的问题
  7. WebKit与event.layerX和event.layerY有关的问题
  8. 如何在Swift 3中创建调度队列
  9. p3295 [SCOI2016]萌萌哒
  10. OSPF的基本原理及配置命令