python 走势图如何实现彩票走势图

【小白学爬虫】用Python分析福彩3D|发现数字的秘密
这是菜鸟学Python的粉丝第3篇原创投稿
本篇作者:路上行舟+菜鸟学python 合作完成
相信福利彩票大家都买过吧,既然学爬虫为何不动手写个小程序抓一下呢,说不定还能发现福彩的秘密,本篇主要面向于对Python爬虫感兴趣的零基础的同学,实例为中彩网的福利3D彩票,比较有趣,小伙伴们一起动手开始吧
环境:Windows XP
Python :Python 2.7
需要用到的库:re,xlwt,urllib,collections
1.分析网页链接
1).首先,打开中彩网的福彩3D,查看3D开奖数据http://www.zhcw.com/3d/kaijiangshuju/index.shtml?type=0
2).我们用chrome浏览器,分析一下网站的结构和源码
访问:http://kaijiang.zhcw.com/zhcw/inc/3d/3d_wqhg.jsp
http://kaijiang.zhcw.com/zhcw/html/3d/list.html
经过观察和分析,开奖数据链接很规律,如下:
第一页:http://kaijiang.zhcw.com/zhcw/html/3d/list_1.html
最后一页:http://kaijiang.zhcw.com/zhcw/html/3d/list_230.html
3).页面分析结果
经过对开奖数据页面分析,总共有230页,链接也很规律
思路为从开奖数据页面抓取开奖日期、开奖期数及开奖号码等数据
然后循环处理每一页,最后将数据写入execl表格即可
2.编写代码
新手,只要能达成目的即可,思路就简单粗暴一点
1).第一步,准备食材:
食从何来,与炒菜一个道理,首先要准备食材,要抓取到所有3D的开奖记录,那么就要获取到所有开奖页面的html源码,简单粗暴一点,循环访问第1页到第230页,将所有页面的html源码全部获取到,示例代码如下:
输出的网站源码为:
其实我们的彩票的数据都隐藏在上面这个源码html文件里面,下面我们的主要工作就是解析html文件就可以啦
2).第二步,开火爆炒
用get_3d_html()获取到的所有页面源码
使用正则表达式从中提取到开奖等数据(开奖日期、开奖期号、开奖号码)
代码如下:观察开奖数据页面源码,要获取的数据如下图红色框内的数据
构造正则:
&tr&.*?&td align="center"&(.*?)&/td&.*?&td align="center"&(.*?)&/td&.*?&td align="center" style="padding-left:20"&&em&(.*?)&/em&.*?&em&(.*?)&/em&.*?&em&(.*?)&/em&&/td&
(u'', u'2017228', u'5', u'3', u'5')
(u'', u'2017227', u'8', u'8', u'5')
(u'', u'2017226', u'9', u'0', u'3')
(u'', u'2017225', u'8', u'0', u'1')
(u'', u'2017224', u'2', u'6', u'5')
(u'', u'2017223', u'7', u'7', u'8')
(u'', u'2017222', u'7', u'3', u'1')
(u'', u'2017221', u'8', u'5', u'7')
(u'', u'2017220', u'2', u'8', u'7')
(u'', u'2017219', u'5', u'1', u'3')
3.把数据写入表格中
经过上面几步,数据已经全部清洗完毕,现在把抓取到的开奖数据保存进excel表格中吧
利用xlwt模块生产一个表格对象(关于xlwt的用法可以看历史文章关于Excel表格如何处理|这篇最用心)
先写一个表格的头部标题
接着循环把获取的数据全部写入表格
最后保存数据
4.找出福彩3d的秘密
上面的代码还有2页的数据,现在我们把页面从range(1,3)改成range(1,22),获取全年的数据,然后分析一下,看看数字背后的秘密:
1.最频繁出现的数字
1).找出全年数字出现频率最高的3个数字
2).找出百位数出现频率最高的3个数字
3).找出十位数出现频率最高的3个数字
4).找出个位数出现频率最高的3个数字
全年最火的3个数字: 8 3 9
Most popular nums: [(u'8', 137), (u'3', 136), (u'9', 136)]
百位数最火的3个数字:3 8 1
Top3 in hundreds place: [(u'3', 55), (u'8', 50), (u'1', 45)]
十位数最火的3个数字:7,9,5
Top3 in ten place: [(u'7', 50), (u'9', 47), (u'5', 45)]
个位数最火的3个数字:9,5,8
Top3 in single place: [(u'9', 57), (u'5', 46), (u'8', 46)]
2.每期出现重复数字的概率
利用set()简单的统计一下就可以了,发现Python分析数据简直太方便了
全年有133次出现重复数字,近三分之一的概率
Duplicate num percent:31.67%
这篇文章是“路上行舟”同学投的稿,题材很新颖,思路很清晰,技术难度非常适合小白入门,在保持原文的内容的基础上,我并加入了一些数据分析地方,非常有意思的文章,欢迎更多的小伙伴投稿. 有趣,好玩,通熟易懂是我们的宗旨,对于好玩的投稿文章,我会跟你们合作一下,这篇就是一个例子
希望大家喜欢,需要源码请先留言
欢迎大家关注 菜鸟学Python",更多好玩有趣的Python原创教程,趣味算法,经验技巧,行业动态,尽在菜鸟学Python,一起来学python吧
主讲老师邢不行,全额奖学金毕业于香港科技大学,经管之家(原人大经济论坛)「量化投资」版块的版主,拥有多年量化投资实战经验。
课程大纲,更多内容
责任编辑:
声明:本文由入驻搜狐号的作者撰写,除搜狐官方账号外,观点仅代表作者本人,不代表搜狐立场。
今日搜狐热点Python随机生成彩票号码的方法
转载 & & 作者:卢温禾
这篇文章主要介绍了Python随机生成彩票号码的方法,涉及Python操作随机数及字符串的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
本文实例讲述了Python随机生成彩票号码的方法。分享给大家供大家参考。具体如下:
前些日子在淘宝上买了一阵子彩票,每次都是使用淘宝的机选,每次一注。后来觉得不如自己写一个机选的程序有意思
1. xuanhao.py文件
import random
def getResultStr(totalCount, resultCount):
elements = [x + 1 for x in range(totalCount)]
retStr = ''
for i in range(resultCount):
res = elements[random.randint(0,len(elements)-1)]
elements.remove(res)
retStr += ' ' + str(res)
return retStr
2. shuangseqiu.py文件
import xuanhao
print xuanhao.getResultStr(33, 6)
print xuanhao.getResultStr(16, 1)
3. daletou.py文件
import xuanhao
print xuanhao.getResultStr(35, 5)
print xuanhao.getResultStr(12, 2)
希望本文所述对大家的Python程序设计有所帮助。
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)全栈工程师教你用Python分析福彩,Python是最容易学的编程语言!全栈工程师教你用Python分析福彩,Python是最容易学的编程语言!额滴神呀百家号相信福利彩票大家都买过吧,既然学爬虫为何不动手写个小程序抓一下呢,说不定还能发现福彩的秘密,本篇主要面向于对Python爬虫感兴趣的零基础的同学,实例为中彩网的福利3D彩票,比较有趣,小伙伴们一起动手开始吧。在给大家分享之前呢,小编推荐一下一个挺不错的交流宝地,里面都是一群热爱并在学习Python的小伙伴们,大几千了吧,各种各样的人群都有,特别喜欢看到这种大家一起交流解决难题的氛围,群资料也上传了好多,各种大牛解决小白的问题,这个Python群: 欢迎大家进来一起交流讨论,一起进步,尽早掌握这门Python语言。1.分析网页链接1).首先,打开中彩网的福彩3D,查看3D开奖数据2).我们用chrome浏览器,分析一下网站的结构和源码1).第一步,准备食材:食从何来,与炒菜一个道理,首先要准备食材,要抓取到所有3D的开奖记录,那么就要获取到所有开奖页面的html源码,简单粗暴一点,循环访问第1页到第230页,将所有页面的html源码全部获取到,示例代码如下:输出的网站源码为:其实我们的彩票的数据都隐藏在上面这个源码html文件里面,下面我们的主要工作就是解析html文件就可以啦2).第二步,开火爆炒用get_3d_html()获取到的所有页面源码使用正则表达式从中提取到开奖等数据(开奖日期、开奖期号、开奖号码)代码如下:观察开奖数据页面源码,要获取的数据如下图红色框内的数据构造正则:&tr&.?&td align=&center&&(.?)&/td&.?&td align=&center&&(.?)&/td&.?&td align=&center& style=&padding-left:20&&&em&(.?)&/em&.?&em&(.?)&/em&.?&em&(.?)&/em&&/td&(u'', u'9;, u'5', u'3', u'5')(u'', u'9;, u'8', u'8', u'5')(u'', u'9;, u'9', u'0', u'3')(u'', u'9;, u'8', u'0', u'1')(u'', u'9;, u'2', u'6', u'5')(u'', u'9;, u'7', u'7', u'8')(u'', u'9;, u'7', u'3', u'1')(u'', u'9;, u'8', u'5', u'7')(u'', u'9;, u'2', u'8', u'7')(u'', u'9;, u'5', u'1', u'3')3.把数据写入表格中经过上面几步,数据已经全部清洗完毕,现在把抓取到的开奖数据保存进excel表格中吧利用xlwt模块生产一个表格对象(关于xlwt的用法可以看历史文章关于Excel表格如何处理|这篇最用心)先写一个表格的头部标题接着循环把获取的数据全部写入表格最后保存数据4.找出福彩3d的秘密上面的代码还有2页的数据,现在我们把页面从range(1,3)改成range(1,22),获取全年的数据,然后分析一下,看看数字背后的秘密:1.最频繁出现的数字1).找出全年数字出现频率最高的3个数字2).找出百位数出现频率最高的3个数字3).找出十位数出现频率最高的3个数字4).找出个位数出现频率最高的3个数字全年最火的3个数字: 8 3 9Most popular nums: [(u'8', 137), (u'3', 136), (u'9', 136)]百位数最火的3个数字:3 8 1Top3 in hundreds place: [(u'3', 55), (u'8', 50), (u'1', 45)]十位数最火的3个数字:7,9,5Top3 in ten place: [(u'7', 50), (u'9', 47), (u'5', 45)]个位数最火的3个数字:9,5,8Top3 in single place: [(u'9', 57), (u'5', 46), (u'8', 46)]2.每期出现重复数字的概率利用set()简单的统计一下就可以了,发现Python分析数据简直太方便了全年有133次出现重复数字,近三分之一的概率。谢谢阅读,此篇转载菜鸟的文章,如有侵权请联系小白删除!数据依旧只是数据 不能想着这个发财!本文仅代表作者观点,不代表百度立场。系作者授权百家号发表,未经许可不得转载。额滴神呀百家号最近更新:简介:本人有丰富的综合领域写作经验。作者最新文章相关文章

我要回帖

更多关于 python 彩票分析算法 的文章

 

随机推荐