Wordpress前端+Python後台有機結合做一個今日熱數的插件

2018-09-29 约 978 字 预计阅读 2 分钟

今天是甲子日,打算開始進行財運的觀照之旅。

擬借某在線平台的輪盤作為實驗對象,而根據本人的帖子幸存者偏差、彩票偏向是不可能根據實時出來的數字來頭上安頭來預測結果的。

但是可以參考大數據的數字分布來設定一個固定的策略來盡量發揮自身的財運。

想到一個方式,就是測試當天的隨機10000個數字,1到12的數字最多的是哪一個。

為什麼取12個數呢。因為數字的出現多寡跟十二地支可能會有一定的關係。

隨機數可以用random.org產生。此網站號稱是基於大氣噪聲產生隨機數,是“真正”的隨機數。

故此需要一個程序來下載其網站之隨機數列並用圖表展示出來。

Wordpress是采用的PHP語言,這個語言用來下載東西就比較頭痛,由此想到後台仍然還是用python語言,采集數據和數據分析都非常方便,生成一個圖形,再顯示在wordpress好了。

說幹就幹,先用python語言下載數據:
import requests

session = requests.Session()

url='https://www.rrandom.org/integers/?num=10000&min=1&max=12&col=1&base=10&format=plain&rnd=new'

r= session.get(url, headers={'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0'})

確實輕鬆,幾行就下載下來了。

然後需要分析數據,最開始找了一個plotly,調試了一會居然又要求注冊,罷了,換一個,找到matplotlib十分好用
labels=['1','2','3','4','5','6','7','8','9','10','11','12']
values = [NUMBERS.count("1"),NUMBERS.count("2"),NUMBERS.count("3"),
NUMBERS.count("4"),NUMBERS.count("5"),NUMBERS.count("6"),
NUMBERS.count("7"),NUMBERS.count("8"),NUMBERS.count("9"),
NUMBERS.count("10"),NUMBERS.count("11"),NUMBERS.count("12")]
fig1, ax1 = plt.subplots()
ax1.pie(values, labels=labels,autopct='%1.1f%%',
shadow=True, startangle=90)
ax1.axis('equal') # Equal aspect ratio ensures that pie is drawn as a circle.

plt.title('Hot numbers in '+str(today))

fig1.savefig(filename,bbox_inches='tight')

短短幾行,一個餅圖就搞定了。作為PNG文件存在某一個位置。

每天產生一個png文件就可以了。所以加一個計劃任務
sudo crontab -e

在最後一行加上
0 0 * * * /usr/bin/python3 /path/hotpie.py > /path/hotpie.log 2>&1

這個計劃任務就是每天0點運行一下,產生一個新的png文件。如果有錯發生就記錄在hotpie.log文件裏。

PNG文件產生了。我將其放在邊欄,但是太小了,看不清,需要做一個點擊出來的大圖效果。

到w3school找了一片代碼修改了一下

更新


在實踐過程中,感覺運勢是隨時辰而變化,而非隻是日支影響,時令也相當有作用力。

故此需要每小時產生隨機數。但random.org每天有超過1萬數據的產生就需要收費了。

那我還是采用python自產的隨機數函數,每個小時運行一次,產生120萬個1-12的隨機數,加入了幾個簡單的統計,從一個餅裝圖變成了四個餅。

計劃任務改為每小時開始運行一次
0 * * * * /usr/bin/python3 /path/hotpie.py > /path/hotpie.log 2>&1

120萬個數字,服務器運行會需要數秒,故此有幾秒網頁上會訪問到服務器尚未產生的圖形文件,這樣就會給用戶困擾。

好在還有一個onerror功能,如果訪問到不存在的圖形時,自動設成前一個小時產生的圖片。

全部代碼更新如下:



 

 

 

author

Jesse Lau

網名遁去的一,簡稱遁一。2012年定居新西蘭至今,自由職業者。手搓的GPTs
本文采用知識共享署名 4.0 國際許可協議進行許可。簡而言之,可隨意轉發轉載,轉載請注明出處。


留点评论吧: