当前位置:   article > 正文

python抓取网站数据并图形化显示(一)_python爬取数据系统界面原型图

python爬取数据系统界面原型图

这里主要介绍通过python抓取网站数据并图形化显示
先来看下最终效果
首页
在这里插入图片描述
趋势图
在这里插入图片描述
地图显示
在这里插入图片描述

一、整体思路

先抓取链接,存入MYSQL数据库,而后读取数据库中的链接,依次抓取网页的数据信息,最后在Django的基础上用highchart和highmap显示出来。因为新冠疫情爆发,大家对疫情数字比较关心,各平台也有相关的数据图表,咱也做一个试一试,就当是学习了。

二、具体操作

(一)条件

1.安装了PYTHON3.8
2.安装了MYSQL
3.安装了Django及相关包
4.使用pycharm
5.安装chrome浏览器(利用其抓取链接数据)

(二)步骤

1.建立数据库

建立名为ncov(因新冠病毒名称暂为2019ncov,所以起了这么一个名字)

2.建立表格

(1)名称:linktable
作用:用来存储链接数据
主要字段(从models.py中复制而来,默认还有多个自增的id字段):
linktitle = models.CharField(max_length=100, blank=True, null=True) linkvule = models.CharField(max_length=100, blank=True, null=True)
linkdate = models.DateField(blank=True, null=True)
(2)名称:tota
作用:用来存储各种病例数据
主要字段(从models.py中复制而来,默认还有多个自增的id字段): city = models.CharField(max_length=45, blank=True, null=True) number_doubt = models.IntegerField(blank=True, null=True) number_ok = models.IntegerField(blank=True, null=True) number_total = models.IntegerField(blank=True, null=True) number_dead = models.IntegerField(blank=True, null=True) number_recure = models.IntegerField(blank=True, null=True) date_record = models.DateField(blank=True, null=True) totalcol = models.CharField(max_length=45, blank=True, null=True)
这里主要用到city(城市名称),number_ok(确诊病例数),后续因为时间有限仅仅统计了确诊病例数,如要其他数据,比如nunber_dead(死亡病例)number_recure(治愈病例)等,需要调整抓取数据的关键字,重新抓取数据。因为是学习探路,笔者仅仅实验了抓取确诊病例数,有兴趣的可以自行研究下。

3.构建Django工程

建立一个名为nCov的Django工程,而后再建立一个名为epidemic的应用。 使用 python manage.py inspectdb epidemic/models.py 生成模型
**【注意】**因为是反复试验的结果,文件名不是很规范,还有很多冗余代码,请自行忽略
(1)建立static文件夹 在nCov工程下建立static文件夹(与epidemic,nCov应用平级)
在这里插入图片描述
到Highmaps下载highcharts和highmaps而后将其加压复制到子文件夹js中,如图所示
在这里插入图片描述
还得下载一个jquery-1.8.3.js文件放置在jquery中
highmaps中的china.js和yunnan.js文件可到Highmaps下载
注意js文件要通过分析下载的html文件获取,比如云南省.html中会有如下语句

<script src="https://img.hcharts.cn/highmaps/highmaps.js"></script>
<script src="https://data.jianshukeji.com/geochina/yunnan.js"></script>
  • 1
  • 2

其中:https://data.jianshukeji.com/geochina/yunnan.js 就是yunnan.js文件的下载地址。
(2)在templates文件夹下建立HTML模板文件
如图所示
在这里插入图片描述
(3)在epidemic下建立新建若干py文件
如图所示
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/205296
推荐阅读
相关标签
  

闽ICP备14008679号