ETH官方钱包

前往
大廳
主題

【W(wǎng)eb + Github Page + Python爬蟲】免費(fèi)Host一個自己的網(wǎng)頁,順便寫個網(wǎng)頁紓壓

%%鼠 拒收病婿 | 2021-02-15 02:35:34 | 巴幣 1132 | 人氣 1667

上篇簡單說過使用github page來免費(fèi)Host網(wǎng)站,缺點是不能使用PHP等後端腳本。

因為一些"生活煩惱"所以覺得寫個網(wǎng)頁散散心,但我懶的想要用什麼內(nèi)容衝版面,於是想到用爬蟲來抓自己巴哈小屋的創(chuàng)作好了。


先上成品頁面:https://lontoone.github.io/

來個頁面截圖,大部分人看到的應(yīng)該是中文的網(wǎng)站,自動偵測語系的作法下面來講。


先講爬蟲,我是看這個影片學(xué)分析。

正常用ajax也能抓回網(wǎng)頁html,但巴哈有做些措施,不知道為甚麼ajax的要求都會卡在header資訊,明明帶的跟python腳本帶的是一樣的。
anyway,我就用python爬我的小屋創(chuàng)作並輸出成json文字檔push上git,用戶打開網(wǎng)頁時由js去解析並輸出。 因為github page不能跑後端程式,所以我可能偶爾執(zhí)行一下爬蟲並push 結(jié)果上去或直接寫個腳本在我開機(jī)時自動git一次吧。

先抓我小屋創(chuàng)作總頁數(shù)

用regex抓的頁面元素





主要爬蟲:

38-40行: 巴哈有擋header沒設(shè)定user-agent的訪問,所以在訪問時加上資訊騙一下。
69-99行: 註解的是原本用regex抓資料的做法,後來發(fā)現(xiàn)beautifulsoup能直接找網(wǎng)頁元素比較好用。
104行: json.dump將dict型態(tài)的資料轉(zhuǎn)型成json格式並輸出。  

python不能像C#在類別前面加個[system.serializable]就能自動序列化,所以在自訂類別加了個轉(zhuǎn)成dict的方法好搭配json.dump。 (有些參數(shù)暫時沒用到。)


結(jié)果(部分截圖):

文字檔大概格式是:



多語系:
其實也沒多厲害,就是準(zhǔn)備不同語言的文字檔,靠js偵測用戶瀏覽器語言後選擇要讀取哪個文字檔。

html只要呼叫方法讀檔。
讀取表格的作法上篇有用到,這個只要簡單讀文字檔就好。


以上,目前先做HOME和BLOG這兩頁,剩下的接著再看看吧!

雜紀(jì):
所謂"生活煩惱",有空來談?wù)劏臱D

送禮物贊助創(chuàng)作者 !
0
留言

創(chuàng)作回應(yīng)

御安鴨·摸頭害鴨哭
大佬
2021-02-15 13:50:07
%%鼠 拒收病婿
不佬不佬,邊做邊學(xué)而已XD
2021-02-15 17:40:56
悠閒紅茶
我像是看到了銀河系
2021-02-15 19:40:49
%%鼠 拒收病婿
web應(yīng)用只會基本而已啦XD
2021-02-15 20:24:49
追蹤 創(chuàng)作集

作者相關(guān)創(chuàng)作

相關(guān)創(chuàng)作

更多創(chuàng)作