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年定居新西兰至今,自由职业者。
本文采用知识共享署名 4.0 国际许可协议进行许可。简而言之,可随意转发转载,转载请注明出处。


留点评论吧:

本网站使用cookie技术以提高用户体验度。 了解我们的隐私政策 我已了解