python实战案例:全国岗位可视化分析
实战案例内容
今天这个实战案例来源于大学《python爬虫基础与可视化》课程的期末大作业。大作业要求采用虚拟浏览器等爬虫技术,完成拉勾网网站的岗位数据爬取。将爬取的数据清洗和保存,同时利用相关技术对数据进行可视化,向用户展示一个全面真实的岗位情况。
整体思路
数据爬取
首先,设计爬虫程序,以网址为起始点,分析初始网页的url及其网页内容和结构信息,完成分析后就可以获取数据。这一部分的设计思路和实现可以查看我之前分享的文章:[Python爬虫拉勾网岗位数据](https://juejin.cn/post/7028133174051864612 "https://juejin.cn/post/7028133174051864612")
数据存储
后面我们会使用Flask框架进行可视化分析,而Flask本身不限制数据库的选择,为了方便我就将获取到的数据存储到sqlite数据库中,存储的数据内容如下:

数据可视化
通过对该网站岗位数据的爬取可以获取到很多有价值的信息,同时进行可视化分析。我这里使用了python的常用框架--Flask框架,它是一个轻量级的web框架。在Flask中调用视图函数后,会将视图函数的返回值作为响应的内容(一般为字符串和状态码)返回给浏览器。
1、创建Flask工程
我是使用的编辑器是pycharm,只要在新建工程时选择Flask就可,但是要记得打开Debug模式,不然如果你更改的数据或代码时,刷新页面时没有效果,需要重新编译才可以,打开的位置见下图:

2、设计网页
这里我在网上找了一个大数据分析的模板,网页布局如下:

3、提取数据
根据Flask框架的语法,设计在用户访问网址时,需要像服务器端获取的数据,并将数据渲染到浏览器页面中。
Flask框架中,获取服务器端数据的函数方法实现如下图:

Flask中网页数据渲染模板如下:

最后就是数据渲染到浏览器页面,这一部分就是通过发送ajax请求获取到数据,然后将数据转换成需要的格式,最后将数据添加到对应的位置就可以了。我这里使用了一个JavaScript 实现的开源可视化库--**ECharts**来制作图表
