疫情數據實時可視化平臺 python+Flask+Echarts+mysql 計算機畢業設計

疫情數據實時可視化平臺 python+Flask+Echarts+mysql 計算機畢業設計


一、開發技術

pycharm、MySQL數據庫/sqlite3數據庫、Python3.x版本、Flask框架

二、功能

用戶注冊、登錄、后臺管理員、商品數據基本信息首頁、數據統計分析、商品價格區間、銷售價格、銷量、好評率、差評率、商品詳情

商品數據分析可視化、區間餅圖、柱狀圖、折線圖、好評率前5、前5品牌、差評最多...............

商品數據爬蟲......

三、項目運行截圖






1、MySQL版本要求: 8.0 (5.x版本導不進去)

2、運行說明:

啟動app.py文件,瀏覽器打開可視化大屏:http://127.0.0.1:5000/

系統后臺頁面:http://127.0.0.1:5000/login

賬號admins ???密碼 admins


一、數據集說明

數據格式:數據集存入一個以yiqing.sql命名的sql文件中;

數據來源:通過Python的爬蟲技術,爬取騰訊疫情數據可視化平臺的數據;

數據存儲方式:將爬取到的數據存入MySQL數據庫中;

數據特點:數據庫系統實現了整體數據的結構化,數據之間有聯系;備份數據,可以避免數據丟失,可以被多個應用程序共享使用,可以大大減少數據冗余,節約存儲空間;數據獨立性高。

二、技術說明

本項目運用Python網絡爬蟲、MySQL、Flask、ECharts、Layui為基礎的新冠疫情實時監測系統。涉及到的技術主要包括:使用Python網絡爬蟲爬取疫情數據、使用MySQL數據庫存儲解析得到的數據、利用Flask構建Web項目、利用ECharts生成可視化大屏圖、利用Layui生成后臺數據管理的網頁布局。功能主要包括管理員的登錄、管理員對數據爬蟲進行啟動獲取數據、管理員對后臺疫情相關數據進行修改和刪除操作、全國新冠肺炎疫情總體狀況統計和展示等。

Python編程語言

Python程序語言適用于數據處理、數據可視化等,所以在該項目使用Python程序語言是非常合適的。Python可以根據pip來直接安裝大量的第三方庫,便于操作。

Python網絡爬蟲

網絡爬蟲是一種根據具體搜索規則來實現自動爬行的應用程序。因為標準庫和第三方庫的內容全面而充實,所以它能夠實現大量的數據采集、數據分析等工作。

爬蟲工作的流程:

①建立起請求,獲取響應。

通過HTTP庫,對目標站點進行請求,就好像打開瀏覽器,輸入一個網址。

用到的庫∶ Urlib、Urlib3、Requests。服務器會返回請求的內容,一般為HTML、二進制文件、文檔、JSON字符串等。

②解析內容。

尋求自己所需的信息,即使用正則表達式或利用其他庫來提取目標管理信息。Re庫和BeautifulSoup4庫是最常見的兩種。

③保存數據。

將分析所得到的數據持久化到文件或者數據庫中。

beautifulsoup4

使用beautifulsoup4解析內容

beautifulsoup4將復雜的 HTML 文檔轉換成一個樹形結構,每個節點都是Python對象

?安裝:pip install beautifulsoup4

?BeautifulSoup(html)

? 獲取節點:find()、find_all()/select()

? 獲取屬性:attrs

? 獲取文本:text

MySQL數據庫

MySQL數據庫是目前大家使用最頻繁的關系數據庫管理系統之一。它是瑞典MySQL AB公司發展起來的,后來被Oracle公司收購。關系型數據庫把數據存儲于不同的數據表格中,而非把所有的數據都置于一個大的倉庫中,并且表與表之間也有聯系。因此,訪問的速度和靈活性得到了改善。MySQL使用的SQL語句是目前應用最廣泛的一種規范語言。

?使用 pymysql 模塊與數據庫交互

?安裝: pip install pymysql

① 建立連接

② 創建游標

③ 執行操作

④ 關閉連接

Flask框架

Flask 是一個使用 Python 編寫的輕量級 Web 應用框架。其 WSGI(Python Web Server Gateway Interface) 工具包采用 Werkzeug ,模板引擎則使用 Jinja2 ,是目前十分流行的 web 框架。

? Flask 獲取請求參數

? 使用 request 對象獲取參數

① request.values 獲取參數字典

② request.values.get("參數名")

? 使用 Ajax 局部刷新頁面

?Ajax 是 Asynchronous JavaScript

and XML 的簡稱,通過 Ajax 向服務

器發送請求,接收服務器返回的json

數據,然后使用JavaScript 修改網頁

的來實現頁面局部數據更新

?使用 jquery 框架可方便的編寫

ajax代碼,需要 jquery.js 文件


ECharts,縮寫來自 Enterprise Charts,商業級數據圖表,是百度的一個開源的數據可視化工具,提供了豐富的圖表庫,能夠在 PC 端和移動設備上流暢運行。


Layui(諧音:類 UI) 是一套開源的 Web UI 解決方案,采用自身經典的模塊化規范,并遵循原生 HTML/CSS/JS 的開發方式,極易上手,拿來即用。其風格簡約輕盈,而組件優雅豐盈,從源代碼到使用方法的每一處細節都經過精心雕琢,非常適合網頁界面的快速開發。Layui 區別于那些基于 MVVM 底層的前端框架,卻并非逆道而行,而是信奉返璞歸真之道。準確地說,它更多是面向后端開發者,你無需涉足前端各種工具,只需面對瀏覽器本身,讓一切你所需要的元素與交互,從這里信手拈來。

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容