服务器可视化_疫情来袭,30分钟学会用python开发部署疫情可视化网站
2019—nCov疫情實(shí)時數(shù)據(jù)可視化——30分鐘python快速版
疫情來襲,宅在家不如學(xué)習(xí)用python如何開發(fā)并部署一個疫情實(shí)時追蹤可視化頁面。頁面預(yù)覽
本文將介紹如何使用python開發(fā)網(wǎng)站,「因?yàn)槭?0分鐘快速搭建部署版,所以將省去所有Django中配置項(xiàng)文件的配置過程說明」,詳細(xì)的配置過程將在專欄下「完整版Django開發(fā)網(wǎng)站」中進(jìn)行說明。這也是我推薦的一般學(xué)習(xí)python的步驟:「通過快速上手一個項(xiàng)目,先學(xué)會套路并將程序運(yùn)行起來,然后再回過頭看相關(guān)的開發(fā)文檔」。
因?yàn)橛肈jango開發(fā)部署網(wǎng)站這一套流程我已經(jīng)走過很多遍了,所以基本上是站在上帝視角盡可能的去簡化的寫這個文檔,里面的所有軟件在我的歷史文章都有介紹。當(dāng)然對于小白來說肯定還會有地方看不懂,或者哪一步報了我沒有寫下來的異常,有任何問題,歡迎提出那么我們開始吧。
準(zhǔn)備
- [「必須」]一臺服務(wù)器并配置好anaconda與mysql。如果還沒有服務(wù)器的小伙伴可以看專欄下的購買并配置自己的云服務(wù)器
- 一臺電腦并配置好mysql。可以點(diǎn)擊專欄下centos如何配置mysql
- 基礎(chǔ)編程知識
- 軟件:navicat、filezilla (專欄中均有介紹)
- python相關(guān):requests、pyecharts、Django
開始
本次開發(fā)的需求很明確,簡單說來就是三步
- 爬取數(shù)據(jù)
- 數(shù)據(jù)可視化
- 將可視化的結(jié)果部署到服務(wù)器
那么上面的前兩步可以翻閱我前幾篇文章,都已詳細(xì)的說明如何從互聯(lián)網(wǎng)上取得數(shù)據(jù)并利用pyecharts進(jìn)行可視化。那么我假設(shè)你已經(jīng)寫好了可視化的程序,在使用pyecharts進(jìn)行可視化的最后,使用
.render('map1.html')#意思將圖片轉(zhuǎn)換為html格式 名稱為map1.html
將我們需要展示的地圖、餅圖等生成為html格式保存起來,方便我們之后嵌入網(wǎng)頁中。之后就交給「Django」吧。
安裝Django及需要的模塊
首先分別執(zhí)行下面的代碼安裝Django及數(shù)據(jù)庫相關(guān)的模塊
#安裝Django pip install django #數(shù)據(jù)庫相關(guān)模塊,如果報錯也沒關(guān)系 pip install pymysql pip install mysqlclient因?yàn)槲覀兪褂玫氖莔ysql,所以在后面的Django的同步數(shù)據(jù)庫中有一步會報錯,因?yàn)槭强焖俨渴?#xff0c;我們直接提前修改相關(guān)文件解決報錯。(有興趣可以在部署完之后看完整版一步一步走到同步數(shù)據(jù)庫出現(xiàn)報錯再解決)。
用filezilla連接到你的遠(yuǎn)程服務(wù)器,如果你是按照我文章里面配置anaconda的話,打開以下路徑
/root/anaconda3/lib/python3.7/site-packages/django/db/backends/mysql找到base.py注釋以下內(nèi)容
if version < (1, 3, 13):raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)再打開這個文件夾中的operations.py,修改146行左右,把decode改為encode
query = query.decode(errors='replace')
完成以上兩個步驟之后再把修改后的文件覆蓋傳輸?shù)皆瓉淼奈募A中。
「當(dāng)然上面的修改步驟可以偷懶節(jié)省時間直接下載修改好的就行」
配置Django
現(xiàn)在ssh連接上你的服務(wù)器,在安裝好Django之后,執(zhí)行下面代碼:
django-admin startproject djtest
意思是創(chuàng)建了一個名為djtest的Django項(xiàng)目,不出意外的話,在filezilla里刷新目錄會多出一個文件夾為djtest,然后執(zhí)行cd djtest進(jìn)入該文件夾,再執(zhí)行python manage.py startapp web之后刷新該文件夾,也會多出一個web文件夾。正常情況下,需要對文件夾里的settings.py等相關(guān)配置文件進(jìn)行配置(包含數(shù)據(jù)庫配置、表單設(shè)置、頁面注冊等),過程相對復(fù)雜,因此暫時可以不用去配置。「直接下載配置好的文件夾」直接整個上傳到服務(wù)器覆蓋掉djtest文件夾。
但是也沒有完全能夠偷懶,還是需要你完成幾步,
- 覆蓋完成之后需要下載里面的settings.py文件,修改里面的數(shù)據(jù)庫密碼為你之前配置數(shù)據(jù)庫設(shè)置的密碼。然后上傳覆蓋掉原來的。
- 將static文件夾中的map1.html,mp2.html替換為你自己剛剛生成的你所關(guān)注的地區(qū)的html文件覆蓋上傳。
之后使用navicat連接上自己的遠(yuǎn)程數(shù)據(jù)庫,按照下面步驟創(chuàng)建一個名為djtest的數(shù)據(jù)庫
之后執(zhí)行。
python manage.py migrate
至此,已經(jīng)完成99%了,只差最后一步,執(zhí)行
nohup python manage.py runserver 0.0.0.0:8000 &
再去阿里云里面按照之前文章里面說的方法,將8000端口添加到安全組里面即可。
此時,隨便找個瀏覽器輸入你的ip:8000,就可以成功看到你所部署的網(wǎng)站了,那么如何進(jìn)一步對網(wǎng)站進(jìn)行個性化設(shè)置(添加登錄模塊、添加修改圖表、添加修改文字)或者是想實(shí)現(xiàn)其他的功能,在完整版的開發(fā)教程中會進(jìn)一步說明。至少走到這里,你已經(jīng)開發(fā)了一個屬于自己的疫情數(shù)據(jù)追蹤網(wǎng)站。
====================================================================
歡迎關(guān)注我的專欄,將會不斷更新數(shù)學(xué)/統(tǒng)計(jì)學(xué)/數(shù)據(jù)分析/深度學(xué)習(xí)/網(wǎng)站開發(fā)相關(guān)內(nèi)容。
有任何疑問可以關(guān)注公眾號:早起python
早起的學(xué)習(xí)小站?zhuanlan.zhihu.com總結(jié)
以上是生活随笔為你收集整理的服务器可视化_疫情来袭,30分钟学会用python开发部署疫情可视化网站的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 让电脑性能火力全开如何让电脑性能全开
- 下一篇: 离职前一定要删的几个文件离职前一定要删的