欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

分析了16年的福利彩票記錄,原來可以用Python這么買彩票

系統 1745 0

分析了16年的福利彩票記錄,原來可以用Python這么買彩票_第1張圖片

目錄
0 引言
1 環境
2 需求分析
3 代碼實現
4 后記

0 引言

上周被一則新聞震驚到了,《2454萬元大獎無人認領!福彩史上第二大棄獎在廣東中山產生 》,在2019年5月2日開獎的雙色球中,廣東中山一位彩民博中2454萬元,兌獎時間截至2019年7月1日。

令人遺憾的是,中獎者最終未現身領獎,2454萬元大獎成為棄獎。經中山市福彩中心查證,這是中國福彩史上金額第二大的棄獎。根據《彩票管理條例實施細則》的有關規定,這次的2454萬元棄獎獎金將被納入彩票公益金。

一直在為福彩做貢獻的我,啥時候能攤上這樣的好事啊。于是我用Python生成了一組雙色球的號碼……

1 環境

操作系統:Windows

Python版本:3.7.3

2 需求分析

隨機生成一組雙色球的號碼,我們可以借助random函數,如下:

          
            import random

def ball():
    ball_list=[]
    while 1:
        a=random.randint(1,33)
        if a not in ball_list:
            ball_list.append(a)
        if len(ball_list)==6:
            break

    ball_list.sort()
    ball_list.append(random.randint(1,16))
    print(ball_list)


ball()
          
        

但要知道,這么搞的話,絲毫不會有什么中獎的,因為太隨機了……

經歷過高考的人,肯定都知道三年模擬五年高考。要知道彩票中獎概率很低的,所以我們在這里先分析下歷年的數據,借助往年的數據來“精準”地推算下一期中獎號碼。

我們通過這個網站來查詢彩票的歷史開獎信息。

http://kaijiang.zhcw.com/zhcw...

分析了16年的福利彩票記錄,原來可以用Python這么買彩票_第2張圖片

我們點擊下一頁,看看網址鏈接是否有規律

http://kaijiang.zhcw.com/zhcw...

http://kaijiang.zhcw.com/zhcw...

http://kaijiang.zhcw.com/zhcw...

http://kaijiang.zhcw.com/zhcw...

http://kaijiang.zhcw.com/zhcw...

不難發現,可以將目標網址拆分如下:

          
            url_part = 'http://kaijiang.zhcw.com/zhcw/html/ssq/list'
url = url_part + '_' + str(i) + '.html'
          
        

而 i 對應的正好是頁碼信息,我們借助 開發調試工具,來看看頁數的信息怎么獲?。?

分析了16年的福利彩票記錄,原來可以用Python這么買彩票_第3張圖片

記錄下這里的元素信息。

接下來,我們需要抓取每一頁中的具體開獎信息。我們繼續通過開發者工具分析出每期開獎信息。

我們依次記錄下每期的開獎日期對應的元素信息:
分析了16年的福利彩票記錄,原來可以用Python這么買彩票_第4張圖片

開獎的批次對應的元素信息:
分析了16年的福利彩票記錄,原來可以用Python這么買彩票_第5張圖片

中獎號碼對應的元素信息:
分析了16年的福利彩票記錄,原來可以用Python這么買彩票_第6張圖片

有了這些元素信息之后,接下來就是代碼的具體實現。

3 代碼實現

在這里,我們獲取網頁的請求使用 requests 模塊;解析網址借助 beautifulsoup4 模塊。因為都是第三方模塊,如環境中沒有可以使用 pip 進行安裝。

          
            pip install requests
pip install beautifulsoup4
pip install lxml
          
        

模塊安裝好之后,進行導入

          
            import requests
from bs4 import BeautifulSoup
          
        

我們需要先在首頁中,拿到頁數信息

          
            # 發起請求
basic_url = 'http://kaijiang.zhcw.com/zhcw/html/ssq/list_1.html'
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36'
}
response = requests.get(basic_url, headers=headers, timeout=10)
response.encoding = 'utf-8'
htm = response.text

# 解析內容
soup = BeautifulSoup(htm, 'html.parser')

# 獲取頁數信息
page = int(soup.find('p', attrs={"class": "pg"}).find_all('strong')[0].text)


接下來,我們就可以根據規律組裝好我們的URL:

url_part = 'http://kaijiang.zhcw.com/zhcw/html/ssq/list'

for i in range(1, page+1):
    url = url_part + '_' + str(i) + '.html'
          
        

拿組裝后的url發起請求,并獲取每頁中各期的開獎信息:

          
            res = requests.get(url, headers=headers, timeout=10)
res.encoding = 'utf-8'
context = res.text
soups = BeautifulSoup(context, 'html.parser')

if soups.table is None:
    continue
elif soups.table:
    table_rows = soups.table.find_all('tr')
    for row_num in range(2, len(table_rows)-1):
        row_tds = table_rows[row_num].find_all('td')
        ems = row_tds[2].find_all('em')
        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].string
        print(result)
          
        

這樣,我們就完成了對每一頁中各期開獎數據的獲取。獲取的數據可以保存在本地。

          
            def save_to_file(content):
    with open('ssq.txt', 'a', encoding='utf-8') as f:
        f.write(content + '\n')
          
        

我們在獲取每期的開獎數據的同時,記錄下紅藍球出現的號碼信息。

          
            # 定義兩個變量, 用于記錄歷史開獎信息中的紅球、藍球號碼信息
red_num = [] 
blue_num = []

red_num.append(ems[0].string) # 紅色球1
red_num.append(ems[1].string) # 紅色球2
red_num.append(ems[2].string) # 紅色球3
red_num.append(ems[3].string) # 紅色球4
red_num.append(ems[4].string) # 紅色球5
red_num.append(ems[5].string) # 紅色球6
blue_num.append(ems[6].string) # 藍色球
          
        

統計出各個號碼出現次數信息:

          
            red_count = Counter(red_num)
blue_count = Counter(blue_num)
          
        

接下來我們可以根據紅藍號碼出現的頻率進行排序,并推測出幾組雙色球號碼信息:

          
            # 按照出現頻率順序
red_sorted = sorted(red_count.items(), key=lambda x: x[1], reverse=False)
blue_sorted = sorted(blue_count.items(), key=lambda x: x[1], reverse=False)

red = red_sorted[0:6]
blue = blue_sorted[0:3]

red = list(map(lambda x:x[0], red))
blue = list(map(lambda x:x[0], blue))

red.sort()
blue.sort()

print('號碼高頻-1注:'+str(red)+' | '+blue[0])
print('號碼高頻-2注:'+str(red)+' | '+blue[1])
print('號碼高頻-3注:'+str(red)+' | '+blue[2])
          
        

當然了,也可以輸出反序輸出,中獎號碼出現頻率較低的幾組,只需要設置 reverse=True 即可。

4 后記

這里根據藍色球各號碼出現的次數,作了張直方圖,可以很直觀到藍色球各號碼出現的頻率。
分析了16年的福利彩票記錄,原來可以用Python這么買彩票_第7張圖片

有人會問了,這樣預測出的中獎號碼,中獎概率究竟有多大呢?

這個,我可說不清楚,只有買了才會知道……小心錯過一個億喲!

好了,以上就是本篇全部內容。

關注公眾號「 Python專欄 」,更多有趣好玩的Python等著你~

本文全套代碼已上傳至Github:https://github.com/MiracleYou...


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!??!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 日韩亚洲欧美视频 | 免费观看成人毛片A片2008 | 国产在线精品成人一区二区三区 | 久久99精品久久久久久臀蜜桃 | 1级毛片 | 亚洲精品久久久久久久久久吃药 | 极品美女aⅴ高清在线观看 一级片片 | 国产高清在线精品一区二区三区 | 热伊人99re久久精品最新地 | 狠狠色丁香婷婷 | 天天操天天射天天插 | 国产一级特黄毛片在线毛片 | a级在线看 | 欧美妇人 | 免费一级特黄3大片视频 | 亚洲精品国产偷自在线观看 | 成人免费一区二区三区视频网站 | 国产极品福利视频在线观看 | 久久精品国产99久久6动漫亮点 | 久久综合偷拍 | 国产黄色在线观看 | 日韩中文视频 | 99国产精品 | 成人网18网站 | 国产美女高潮 | 日韩精品一区二区在线 | 国产福利视频一区美女 | 色播久久 | 91.成人天堂一区 | 久草视频免费看 | 国内精品免费一区二区三区 | 欧美1级 | 天天操 夜夜操 | 色综合天天娱乐综合网 | www.久草 | 三级网站免费 | 国产精品久久久久久久午夜 | 国产区久久 | 久久2| 精品日韩在线 | 三级免费黄色片 |