1. 首页
  2. Python

福利彩票怎么买,编程语言轻松解决。网友:学到了

“u003Cdivu003Eu003Cpu003E1 环境u003Cu002Fpu003Eu003Cpu003E操作系统:Windowsu003Cu002Fpu003Eu003Cpu003EPython版本:3.7.3u003Cu002Fpu003Eu003Cdiv class=”pgc-img”u003Eu003Cimg src=”http:u002Fu002Fp1.pstatp.comu002Flargeu002Fpgc-imageu002F4562fa1cffd94bad931f05d386e119c7″ img_width=”326″ img_height=”303″ alt=”福利彩票怎么买,编程语言轻松解决。网友:学到了” inline=”0″u003Eu003Cp class=”pgc-img-caption”u003Eu003Cu002Fpu003Eu003Cu002Fdivu003Eu003Cpu003E2 需求分析u003Cu002Fpu003Eu003Cpu003E随机生成一组双色球的号码,我们可以借助random函数,如下:u003Cu002Fpu003Eu003Cpreu003Eimport randomu003Cbru003Edef ball():u003Cbru003E ball_list=[]u003Cbru003E while 1:u003Cbru003E a=random.randint(1,33)u003Cbru003E if a not in ball_list:u003Cbru003E ball_list.append(a)u003Cbru003E if len(ball_list)==6:u003Cbru003E breaku003Cbru003E ball_list.sort()u003Cbru003E ball_list.append(random.randint(1,16))u003Cbru003E print(ball_list)u003Cbru003Eball()u003Cbru003Eu003Cu002Fpreu003Eu003Cpu003E但要知道,这么搞的话,丝毫不会有什么中奖的,因为太随机了……u003Cu002Fpu003Eu003Cpu003E经历过高考的人,肯定都知道三年模拟五年高考。要知道彩票中奖概率很低的,所以我们在这里先分析下历年的数据,借助往年的数据来“精准”地推算下一期中奖号码。u003Cu002Fpu003Eu003Cpu003E小编是一名python开发工程师,这里有我自己整理了一套最新的python系统学习教程,包括从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。想要这些资料的可以关注小编,并在后台私信小编:“01”即可领取。u003Cu002Fpu003Eu003Cdiv class=”pgc-img”u003Eu003Cimg src=”http:u002Fu002Fp9.pstatp.comu002Flargeu002Fpgc-imageu002Fcacf8af1e7834852948e81259df9f734″ img_width=”640″ img_height=”660″ alt=”福利彩票怎么买,编程语言轻松解决。网友:学到了” inline=”0″u003Eu003Cp class=”pgc-img-caption”u003Eu003Cu002Fpu003Eu003Cu002Fdivu003Eu003Cdiv class=”pgc-img”u003Eu003Cimg src=”http:u002Fu002Fp1.pstatp.comu002Flargeu002Fpgc-imageu002Ff150bca7423e482481c9d39dba886d01″ img_width=”640″ img_height=”448″ alt=”福利彩票怎么买,编程语言轻松解决。网友:学到了” inline=”0″u003Eu003Cp class=”pgc-img-caption”u003Eu003Cu002Fpu003Eu003Cu002Fdivu003Eu003Cpu003E不难发现,可以将目标网址拆分如下:u003Cu002Fpu003Eu003Cpreu003Eurl_part = ‘http:u002Fu002Fkaijiang.zhcw.comu002Fzhcwu002Fhtmlu002Fssqu002Flist’u003Cbru003Eurl = url_part + ‘_’ + str(i) + ‘.html’u003Cbru003Eu003Cu002Fpreu003Eu003Cpu003E而 i 对应的正好是页码信息,我们借助开发调试工具,来看看页数的信息怎么获取:u003Cu002Fpu003Eu003Cpu003E记录下这里的元素信息。u003Cu002Fpu003Eu003Cpu003E接下来,我们需要抓取每一页中的具体开奖信息。我们继续通过开发者工具分析出每期开奖信息。u003Cu002Fpu003Eu003Cpu003E我们依次记录下每期的开奖日期对应的元素信息:u003Cu002Fpu003Eu003Cpu003E开奖的批次对应的元素信息:u003Cu002Fpu003Eu003Cpu003E中奖号码对应的元素信息:u003Cu002Fpu003Eu003Cpu003E有了这些元素信息之后,接下来就是代码的具体实现。u003Cu002Fpu003Eu003Cpu003E3 代码实现u003Cu002Fpu003Eu003Cpu003E在这里,我们获取网页的请求使用 requests 模块;解析网址借助 beautifulsoup4 模块。因为都是第三方模块,如环境中没有可以使用 pip 进行安装。u003Cu002Fpu003Eu003Cpreu003Epip install requestsu003Cbru003Epip install beautifulsoup4u003Cbru003Epip install lxmlu003Cbru003Eu003Cu002Fpreu003Eu003Cpu003E模块安装好之后,进行导入u003Cu002Fpu003Eu003Cpreu003Eimport requestsu003Cbru003Efrom bs4 import BeautifulSoupu003Cbru003Eu003Cu002Fpreu003Eu003Cpu003E我们需要先在首页中,拿到页数信息u003Cu002Fpu003Eu003Cpreu003E# 发起请求u003Cbru003Ebasic_url = ‘http:u002Fu002Fkaijiang.zhcw.comu002Fzhcwu002Fhtmlu002Fssqu002Flist_1.html’u003Cbru003Eheaders = {u003Cbru003E ‘User-Agent’: ‘Mozillau002F5.0 (Windows NT 10.0; Win64; x64) AppleWebKitu002F537.36 (KHTML, like Gecko) Chromeu002F75.0.3770.100 Safariu002F537.36’u003Cbru003E}u003Cbru003Eresponse = requests.get(basic_url, headers=headers, timeout=10)u003Cbru003Eresponse.encoding = ‘utf-8’u003Cbru003Ehtm = response.textu003Cbru003E# 解析内容u003Cbru003Esoup = BeautifulSoup(htm, ‘html.parser’)u003Cbru003E# 获取页数信息u003Cbru003Epage = int(soup.find(‘p’, attrs={“class”: “pg”}).find_all(‘strong’)[0].text)u003Cbru003E接下来,我们就可以根据规律组装好我们的URL:u003Cbru003Eurl_part = ‘http:u002Fu002Fkaijiang.zhcw.comu002Fzhcwu002Fhtmlu002Fssqu002Flist’u003Cbru003Efor i in range(1, page+1):u003Cbru003E url = url_part + ‘_’ + str(i) + ‘.html’u003Cbru003E拿组装后的url发起请求,并获取每页中各期的开奖信息:u003Cbru003Eres = requests.get(url, headers=headers, timeout=10)u003Cbru003Eres.encoding = ‘utf-8’u003Cbru003Econtext = res.textu003Cbru003Esoups = BeautifulSoup(context, ‘html.parser’)u003Cbru003Eif soups.table is None:u003Cbru003E continueu003Cbru003Eelif soups.table:u003Cbru003E table_rows = soups.table.find_all(‘tr’)u003Cbru003E for row_num in range(2, len(table_rows)-1):u003Cbru003E row_tds = table_rows[row_num].find_all(‘td’)u003Cbru003E ems = row_tds[2].find_all(’em’)u003Cbru003E result = row_tds[0].string +’, ‘+ row_tds[1].string +’, ‘+ems[0].string+’ ‘+ems[1].string+’ ‘+ems[2].string+’ ‘+ems[3].string+’ ‘+ems[4].string+’ ‘+ems[5].string+’, ‘+ems[6].stringu003Cbru003E print(result)u003Cbru003Eu003Cu002Fpreu003Eu003Cpu003E这样,我们就完成了对每一页中各期开奖数据的获取。获取的数据可以保存在本地。u003Cu002Fpu003Eu003Cpreu003Edef save_to_file(content):u003Cbru003Ewith open(‘ssq.txt’, ‘a’, encoding=‘utf-8’) as f:u003Cbru003Ef.write(content + ‘\n’)u003Cbru003Eu003Cu002Fpreu003Eu003Cpu003E我们在获取每期的开奖数据的同时,记录下红蓝球出现的号码信息。u003Cu002Fpu003Eu003Cpu003E# 定义两个变量, 用于记录历史开奖信息中的红球、蓝球号码信息u003Cu002Fpu003Eu003Cpreu003Ered_num = [] u003Cbru003Eblue_num = []u003Cbru003Ered_num.append(ems[0].string) # 红色球1u003Cbru003Ered_num.append(ems[1].string) # 红色球2u003Cbru003Ered_num.append(ems[2].string) # 红色球3u003Cbru003Ered_num.append(ems[3].string) # 红色球4u003Cbru003Ered_num.append(ems[4].string) # 红色球5u003Cbru003Ered_num.append(ems[5].string) # 红色球6u003Cbru003Eblue_num.append(ems[6].string) # 蓝色球u003Cbru003Eu003Cu002Fpreu003Eu003Cpu003E统计出各个号码出现次数信息:u003Cu002Fpu003Eu003Cpreu003Ered_count = Counter(red_num)u003Cbru003Eblue_count = Counter(blue_num)u003Cbru003Eu003Cu002Fpreu003Eu003Cpu003E接下来我们可以根据红蓝号码出现的频率进行排序,并推测出几组双色球号码信息:u003Cu002Fpu003Eu003Cpu003E# 按照出现频率顺序u003Cu002Fpu003Eu003Cpreu003Ered_sorted = sorted(red_count.items(), key=lambda x: x[1], reverse=False)u003Cbru003Eblue_sorted = sorted(blue_count.items(), key=lambda x: x[1], reverse=False)u003Cbru003Ered = red_sorted[0:6]u003Cbru003Eblue = blue_sorted[0:3]u003Cbru003Ered = list(map(lambda x:x[0], red))u003Cbru003Eblue = list(map(lambda x:x[0], blue))u003Cbru003Ered.sort()u003Cbru003Eblue.sort()u003Cbru003Eprint(‘号码高频-1注:’+str(red)+’ | ‘+blue[0])u003Cbru003Eprint(‘号码高频-2注:’+str(red)+’ | ‘+blue[1])u003Cbru003Eprint(‘号码高频-3注:’+str(red)+’ | ‘+blue[2])u003Cbru003Eu003Cu002Fpreu003Eu003Cpu003E当然了,也可以输出反序输出,中奖号码出现频率较低的几组,只需要设置 reverse=True 即可。u003Cu002Fpu003Eu003Cpu003E4 后记u003Cu002Fpu003Eu003Cpu003E这里根据蓝色球各号码出现的次数,作了张直方图,可以很直观到蓝色球各号码出现的频率。u003Cu002Fpu003Eu003Cpu003E有人会问了,这样预测出的中奖号码,中奖概率究竟有多大呢?u003Cu002Fpu003Eu003Cpu003E这个,我可说不清楚,只有买了才会知道……小心错过一个亿哟!u003Cu002Fpu003Eu003Cu002Fdivu003E”

原文始发于:福利彩票怎么买,编程语言轻松解决。网友:学到了

主题测试文章,只做测试使用。发布者:逗乐男神i,转转请注明出处:http://www.cxybcw.com/12978.html

联系我们

13687733322

在线咨询:点击这里给我发消息

邮件:1877088071@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code