999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

談談用Flask搭建通用靜態網站服務的方法

2021-01-11 09:29:20關麗梅
科教導刊·電子版 2020年33期
關鍵詞:服務

關麗梅

(武漢城市職業學院 湖北·武漢 430064)

Flask是一個使用Python編寫的輕量級Web應用程序框架(又稱為“MicroFramework微框架”),它擁有基本完備的Web應用支持功能,比如:Web應用、Web路由、Web表單交互、靜態文件、動態模板 等等一系列功能,同時又將數據庫支持等更復雜的高級特性抽離掉,但是又可以通過擴展來添加這些高級功能。由于Flask是用Python寫的,又簡單易學,在教學環境不能接入互聯網的條件下使用Flask構建與爬蟲程序配套的Web服務是一個非常方便實用的教學解決方案。

1 純文本網頁服務的Flask代碼設計

server.py的代碼如下:

在 server.py所在目錄下的 web文件夾中放入網頁文件studentInfo.html,網頁內容是一張學生信息表格,其中的內容是純粹文字的內容。

server.py執行效果如下:

在網頁瀏覽器中輸入網址http://127.0.0.1:5000/即可打開server.py發布的web網頁,看到的將是一張表格,效果如圖1所示,網頁的顯示沒有什么問題。

圖1

圖2

2 帶圖像網頁服務的Flask代碼設計

可以看到網頁中新加入的圖像沒有能夠正常的顯示出來,為什么會這樣呢?

瀏覽器在訪問網址http://127.0.0.1:5000/時,顯示的表格內容是server.py返回的web/studentInfo.html文件的內容,因此表格的顯示是沒有問題的。

進一步來說,真實的爬蟲程序往往會要求訪問到網站中的多個URL地址,那么相配套的Web服務就不應該像上面的server.py那樣,只能提供單一的一個URL訪問。

我們更希望這個Web服務端程序可以將Web網站文件夾發布為一個靜態網站,讓我們可以自由訪問網站中的每個靜態文件。要想實現這樣的效果,server.py中的@app.route()必須使用動態URL路由表達,可以更改如下:

@app.route("/") #允許任意路徑的URL,并自動將路徑保存到路由變量path中

這個路由指令可以接受形如http://127.0.0.1:5000/studentInfo.html和http://127.0.0.1:5000/python.jpg這樣可變形式的URL訪問地址,不過路由指令相對應的處理函數也需要修改,這個處理函數可以接受路由變量path的值作為函數的一個參數變量,并根據此變量的值做出針對性的處理。

另外,因為jpg圖像文件是二進制數據文件,與純文本形式的html網頁文件很不一樣,我們還需要透過文件mini類型這個概念,對二進制文件進行相應的編碼處理,然后Web服務才能正確的將圖像數據通過http協議傳送給瀏覽器客戶端。

新修改的server.py的完整程序代碼如下,其中包含有詳細的注釋說明:

上面的代碼由于將網站的根目錄指定默認頁面為 index.html,即使用URL地址http://127.0.0.1:5000訪問的將是index.html。如果要訪問前面的那個表格網頁studentInfo.html,可以將URL地址改為 http://127.0.0.1:5000/studentInfo.html,瀏覽器顯示的效果如下:可以看到圖像已經可以正常顯示了。

圖3

3 帶css與js網頁服務的Flask代碼

上文第2部分所設計的代碼中使用了下面的字典mimetypes,用來根據文件擴展名查詢對應的mime類型

所以也適用于引用了css與js文件的網頁。比如用爬蟲爬取有一定復雜數據的網頁,在教室不能連外網的情況下我們可以先在有網的環境將網頁及相關文件全部下載下來,拿到教室把下載的網站文件夾放到與servey.py同級的web文件夾內,就可以用Flask提供服務了,訪問“http://127.0.0.1:5000”與有外網上訪問真實的網址效果完全相同。

如練習從中國氣象局官網首頁爬取數據,真實網址是http://www.cma.gov.cn/,將網站下載后保存到文件index.html與文件夾index_files中,將這個文件與文件夾帶到教室放到web文件夾內運行Flask,用http://127.0.0.1:5000網址訪問服務器,可以看到布局效果與可以上外網的效果完全相同,左下角的圖片是個動態輪播圖像特效,也能正常顯示,可見上文第2部分中所設計的代碼具有通用性,可以提供通用靜態網站發布服務。

4 小結

通過以上所述,我們得出這樣的結論:在沒有外網的情況下我們自己動手寫Falsk服務器代碼是完全可以模擬真實的網站服務的,在教室練習爬蟲程序從網站爬取數據將不再為上網條件所困,而且Flask代碼是用Python語言所寫,同學們也容易看懂。可見用Flask搭建通用靜態網站服務真是個不錯的選擇。

猜你喜歡
服務
自助取卡服務
服務在身邊 健康每一天
今日農業(2019年14期)2019-09-18 01:21:54
服務在身邊 健康每一天
今日農業(2019年12期)2019-08-15 00:56:32
服務在身邊 健康每一天
今日農業(2019年11期)2019-08-13 00:49:08
服務在身邊 健康每一天
今日農業(2019年13期)2019-08-12 07:59:04
服務在身邊 健康每一天
今日農業(2019年10期)2019-01-04 04:28:15
服務在身邊 健康每一天
今日農業(2019年15期)2019-01-03 12:11:33
服務在身邊 健康每一天
今日農業(2019年16期)2019-01-03 11:39:20
高等教育為誰服務:演變與啟示
招行30年:從“滿意服務”到“感動服務”
商周刊(2017年9期)2017-08-22 02:57:56
主站蜘蛛池模板: 亚洲国产精品日韩av专区| 日韩成人在线一区二区| 欧美午夜网| 91色国产在线| 国产精品手机在线观看你懂的| 免费观看成人久久网免费观看| 无码日韩人妻精品久久蜜桃| 亚洲浓毛av| 国产玖玖玖精品视频| 亚洲狠狠婷婷综合久久久久| 日本少妇又色又爽又高潮| 97超碰精品成人国产| 日日噜噜夜夜狠狠视频| 亚洲电影天堂在线国语对白| 精品乱码久久久久久久| 亚洲αv毛片| 国产原创第一页在线观看| 色AV色 综合网站| 国产亚洲高清在线精品99| 日本不卡免费高清视频| 国产精品爽爽va在线无码观看 | 日韩乱码免费一区二区三区| 久久久波多野结衣av一区二区| 在线观看国产精品日本不卡网| 欧美激情二区三区| 99在线视频免费观看| 国产在线日本| 日韩成人在线网站| 无码精品国产dvd在线观看9久| 国产精品永久免费嫩草研究院| 国产欧美在线观看精品一区污| 亚洲最猛黑人xxxx黑人猛交 | 国产精品高清国产三级囯产AV| 国产91熟女高潮一区二区| 免费播放毛片| 亚洲国产中文综合专区在| 国产一国产一有一级毛片视频| 免费人成网站在线高清| 欧美黄色a| 亚洲一区二区约美女探花| 国内熟女少妇一线天| 欧美日韩资源| 狼友视频一区二区三区| 人妻无码中文字幕一区二区三区| 亚洲国产中文在线二区三区免| 国产日本欧美亚洲精品视| 精品视频免费在线| 色综合成人| 亚洲第一网站男人都懂| 91在线精品免费免费播放| 国产剧情国内精品原创| 婷婷激情亚洲| 欧美色伊人| 久久公开视频| 国产精品熟女亚洲AV麻豆| 国产区人妖精品人妖精品视频| 久久久亚洲国产美女国产盗摄| 欧美中文字幕在线播放| 国产黄网永久免费| 久久综合婷婷| 色综合久久久久8天国| 91国内视频在线观看| 亚洲乱码在线视频| 亚洲AV无码久久精品色欲 | 日韩美一区二区| 九一九色国产| 2020极品精品国产| 欧美在线伊人| 久草中文网| 黄色一及毛片| 国产美女精品一区二区| 久久久久久久久18禁秘| 免费看一级毛片波多结衣| 午夜视频www| 国产精品极品美女自在线看免费一区二区 | 亚洲综合久久一本伊一区| 九九精品在线观看| 香蕉视频在线观看www| 国产99精品久久| 亚洲国产成熟视频在线多多| 精品欧美视频| 亚洲综合日韩精品|