1. 程式人生 > 實用技巧 >我的第一個Flask專案

我的第一個Flask專案

專案背景提要

最近公司經常有測試,產品,開發人員需要我幫忙檢視伺服器上面傳送的簡訊驗證碼來完成工作上的一些需求。我們的簡訊驗證碼由我們後臺程式發出,呼叫第三方簡訊平臺傳送,這中間我們會將簡訊傳送內容記錄到日誌檔案,最終是否能傳送成功是第三方簡訊平臺來決定的。這時候如果他們填寫的是一個不存在的手機號碼的話是無法接收到簡訊,但日誌檔案裡面有記錄,如果手工來完成這樣的工作,我需要進入到伺服器,再使用grep來過濾。過程不多,但次數多了也有點繁瑣。最終考慮使用一個簡單的程式來實現讓他們通過Web可以直接檢視。

需要實現我這樣的需求,我需要從前端傳入一個唯一引數到後臺,再進行處理返回,有考慮過自己寫前端,通過提交來實現,但相對較複雜。最後決定使用Python之Flask框架來實現,簡單,快捷,方便,只需要幾行程式碼即可搞定。

實現步驟

首先伺服器需要有Python環境,我的為CentOS,所以預設是有Python環境

安裝Flask模組

pipinstallflask

建立專案index.py(任何位置都可以)

fromflaskimportFlask
fromsubprocessimportPopen,PIPE
app=Flask(__name__)

@app.route('/<phone_number>')
defindex(phone_number):
info=Popen(["grep",phone_number,"/home/gogen/nohup.out"],stdout=PIPE)
info=info.stdout.readlines()
returninfo[-1]

if__name__=='__main__':
app.run(host="0.0.0.0")

說明:

<phone_number>是我們在URI中要傳入的引數,為電話號碼

index這個函式的作用就是使用shell命令根據電話號碼過濾出所有相關的記錄,並生成一個列表,然後返回列表中最後一條資訊

啟動專案

nohuppythonindex.py&

說明:專案啟動成功後預設監聽5000埠

測試

最後通過Web訪問結果如下

T6X36~%5WM2~$5`6M(XPWPF.png


轉載於:https://blog.51cto.com/270142877/2050673