python版本:3.5, bootstrap版本:3.3.7, django版本:2.0

通过win+r键进入cmd输入命令:

django-admin.py startproject website
cd website
python manage.py startapp tool

进入website/website/settings.py添加如下代码:

INSTALLED_APPS = ['django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','tool',#此处为添加
]
#最后一行添加如下代码
STATIC_URL = '/static/'STATIC_ROOT = os.path.join(BASE_DIR, 'collectstatic')STATICFILES_DIRS = (os.path.join(BASE_DIR, 'static'),)

在最外层website目录下创建static文件夹,进入static文件夹再创建bootstrap文件夹,相应教程可参考django引入bootstrap模板以及图片显示 。

进入tool文件夹修改models.py,可参考python凤凰新闻数据分析(一)python爬虫数据爬取 和python凤凰新闻数据分析(二)爬虫数据写入django sqlite3数据库

然后进入admin.py修改如下:

from django.contrib import admin# Register your models here.
from .models import *class InformationAdmin(admin.ModelAdmin):list_display = ('title','time','created')admin.site.register(Information,InformationAdmin)

进入tool文件夹修改views.py,部分代码如下:

from django.shortcuts import render,render_to_response# Create your views here.
from django.http import HttpResponse
from tool.models import *
from wordcloud import WordCloud
import matplotlib.pyplot as plt
import jiebadef plot(request):Information_news = Information.objects.all()Information_news_list = []I_num = M_num = S_num = E_num = F_num =0 #点击量总和,为之后饼状图数据slices = [] #为之后饼状图数据for each_I in Information_news:I_num += int(each_I.clicks)Information_news_list.append(str(each_I))slices.append(I_num)str_ = "".join(Information_news_list)Information_news_text = ' '.join(jieba.cut(str_))path = 'msyh.ttc'wordcloud = WordCloud(font_path=path).generate(Information_news_text)plt.imshow(wordcloud,interpolation='bilinear')plt.axis("off")plt.savefig("C:/pork/website/static/figure/Information.png")# 饼状图为点击量比例,需要单独到控制台生成,即python manage.py shell进入控制台,这里有个问题:生成的饼状图会覆盖词云 # activities = ['Information','Military','Sports','Entertainment','Finance']# cols = ['tan','cadetblue','y','palegreen','plum']# try:# plt.pie(slices,#         explode=[0,0.2,0,0,0],#         labels=activities,#         colors=cols,#         startangle=90,#         shadow=False,#         autopct='%1.1f%%')# except ValueError as e:#     pass# plt.savefig("C:/pork/website/static/figure/Total.png")return render(request,'news_plot.html')

在tool文件夹下新建templates文件夹,在tool/templates/创建news_plot.html,可参考django引入bootstrap模板以及图片显示

<!DOCTYPE html>
<html>
<head><meta charset="utf-8"> <title>新闻网站的数据分析</title><link rel="stylesheet" href="/static/bootstrap/css/bootstrap.min.css"><script src="/static/bootstrap/jquery/jquery.min.js"></script><script src="/static/bootstrap/js/bootstrap.min.js"></script><style>.fakeimg {height: 400px;}.img-thumbnail{height: 400px;width: 800px;}</style>
</head>
<body><div class="jumbotron text-center" style="margin-bottom:0"><h1>新闻网站的数据分析</h1>
</div><nav class="navbar navbar-inverse"><div class="container-fluid"><div class="navbar-header"><button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#myNavbar"><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span>                        </button><a class="navbar-brand" href="#">Python</a></div><div class="collapse navbar-collapse" id="myNavbar"><ul class="nav navbar-nav"><li class="active"><a href="#">主 页</a></li><li><a href="#">词 云</a></li><li><a href="#">关 于</a></li></ul></div></div>
</nav>{% load static %}<div class="container"><div class="row"><div class="col-sm-4"><h2>新闻链接</h2><ul class="nav nav-pills nav-stacked"><li class="active"><a href="#">资讯</a></li><li><a href="#">军事</a></li><li><a href="#">体育</a></li><li><a href="#">娱乐</a></li><li><a href="#">财经</a></li></ul><h2>新闻点击量比例</h2><div class="fakeimg"><img src="{% static "figure/Total.png" %}" height="400px" width="360px"></div><hr class="hidden-sm hidden-md hidden-lg"></div><div class="col-sm-8"><h2 class="I">资讯</h2><div class="fakeimg"><img src="{% static "figure/Information.png" %}" class="img-thumbnail"></div><br><h2 class="M">军事</h2><div class="fakeimg"><img src="{% static "figure/Military.png" %}" class="img-thumbnail"></div><h2 class="S">体育</h2><div class="fakeimg"><img src="{% static "figure/Sports.png" %}" class="img-thumbnail"></div><h2 class="E">娱乐</h2><div class="fakeimg"><img src="{% static "figure/Entertainment.png" %}" class="img-thumbnail"></div><h2 class="F">财经</h2><div class="fakeimg"><img src="{% static "figure/Finance.png" %}" class="img-thumbnail"></div></div></div>
</div><div class="jumbotron text-center" style="margin-bottom:0"><p><span class="glyphicon glyphicon-copyright-mark" aria-hidden="true"></span> 河北金融学院版权所有</p>
</div></body>
</html>

修改website/website/urls.py如下:

from django.contrib import admin
from django.urls import path
from tool.views import *urlpatterns = [path('index/',plot),path('admin/', admin.site.urls),
]

然后cmd输入:

python manage.py runserver 0.0.0.0:8000

浏览器输入127.0.0.1:8000/index即可看到:

完整代码可下载查看:

https://download.csdn.net/download/css_aaa/10530705

python凤凰新闻数据分析(四)整合相关推荐

  1. python凤凰新闻数据分析(一)python爬虫数据爬取

    凤凰网热点新闻 查看网页源代码,发现每个排行的数据在标签<div class="boxTab clearfix">中,共五个div标签 import requests ...

  2. python爬取凤凰新闻网_python凤凰新闻数据分析(一)python爬虫数据爬取

    标签的内容 first_new_td = BeautifulSoup(str(first_new[0]),'html.parser') first_new_item = first_new_td.fi ...

  3. python学习之数据分析(四):Pandas基础

    文章目录 一.Pandas介绍: 1. Pandas介绍: 2.为什么要使用Pandas: 3. DataFrame: 4.DataFrame 4.1 DataFrame结构 4.2 DatatFra ...

  4. Python:物联网数据分析课程设计动态新闻标题热点挖掘

    一.设计内容及目的 (一)设计内容 通过爬取学校新闻网页,获取新闻标题,通过词频统计制作出词云并生成图片. (二)设计目的 新闻标题是新闻的主旨,从新闻标题中可以进行多种内容的挖掘,通过对学校新闻网的 ...

  5. Python技术栈与Spark交叉数据分析双向整合技术实战--大数据ML样本集案例实战

    版权声明:本套技术专栏是作者(秦凯新)平时工作的总结和升华,通过从真实商业环境抽取案例进行总结和分享,并给出商业应用的调优建议和集群环境容量规划等内容,请持续关注本套博客.QQ邮箱地址:1120746 ...

  6. 大数据可视化python_大数据分析之Python数据可视化的四种简易方法

    本篇文章探讨了大数据分析之Python数据可视化的四种简易方法,希望阅读本篇文章以后大家有所收获,帮助大家对相关内容的理解更加深入. < 数据可视化是任何数据科学或机器学习项目的一个重要组成部分 ...

  7. 基于Python热点新闻关键词数据分析系统

    温馨提示:文末有 CSDN 平台官方提供的博主 Wechat / QQ 名片 :) 1. 项目简介 利用网络爬虫技术从某新闻网站爬取最新的新闻数据,并进行版块分类,对某篇版块下的所有新闻进行中文分词, ...

  8. 凤凰新闻岳建雄:互联网已经成为传统行业

    凤凰网副总裁.凤凰新闻客户端总经理岳建雄分享移动互联网六大未来趋势 11月29日,2016"凤凰新闻客户端5.4.0新版本发布媒体沙龙"在北京凤凰国际传媒中心举行,凤凰网副总裁.凤 ...

  9. python笔记:数据分析的实际应用 工具小记

    数据分析简单小记: 简单说:数据分析中至少80%的时间都用在数据预处理,分析.建模.测试等工作占比不到20%. During the course of doing data analysis and ...

最新文章

  1. html 第三次作业
  2. linux下的ppp软件,linux下ppp拨号无线上网(示例代码)
  3. 怎么在android中定义泛型,android – 如何在GSON TypeToken类中使用自定义泛型?
  4. jQuery事件整合
  5. 笔记本屏幕30hz_你真的了解笔记本电池和电源适配器吗?
  6. 发掘商业潜力 戴尔第13代服务器升级带动企业能效升级
  7. 资管运营BAND原创|那些年,资管运营业务交互中的酸甜苦辣
  8. android iptables清空,android中的iptables错误:iptables-save和iptables-restore无法正常工作...
  9. 基于Unity引擎的RPG3D项目开发笔录
  10. 微信公众号、企业服务号如何配置运营管理人员
  11. asp.netcore 关于静态文件的访问权限控制(UseStaticFiles)
  12. Cent OS 使用nohup 启动 Springboot避坑
  13. oracle vm虚拟盒,虚拟盒子内部版下载|虚拟盒子虚拟机下载_最火软件站
  14. linux解压lzma,如何获得LZMA2文件的解压缩大小(.xz/liblzma)
  15. 什么是握手信号? 什么是握手协议?
  16. C语言编程>第一周 ③ 输入某年某月某日,判断这一天是这一年的第几天
  17. 【秋招纪实录】一篇特别正经的【TCL】求职经验分享
  18. WIN7系统忘记密码怎么办?忘记开机密码的解决方法
  19. anti-Nim游戏(反Nim游戏)简介
  20. 关于SWITCH中CASE的执行顺序。

热门文章

  1. 停止线程 暂停线程
  2. Request.url用法
  3. NLP任务中, 被pad和unk的向量应该赋值为zero还是random呢?
  4. android8.1 相机(SnapdragonCamera)长按拍照时关闭闪光灯
  5. 计算机cpu的速度越来越快 这导致,计算机一级笔试模拟题(1-6)
  6. Chatbot(五)
  7. 深入CC3200(1)—芯片简介及学习方法
  8. Resnet_50网络结构详解
  9. PHP实现生成小程序二维码带参数进入指定页面、小程序URL scheme实现携带数据跳转小程序
  10. ThinkPHP6使用七牛云存储,不改代码,改下配置就上七牛