python爬取分析超级大乐透历史开奖数据!你中奖了吗?

爬取网站:http://datachart.500.com/dlt/history/history.shtml —500彩票网 (分析后发现网站源代码并非是通过页面跳转来查找不同的数据,故可通过F12查找network栏找到真正储存所有历史开奖结果的网页)

如图:

爬虫部分:

from bs4 import BeautifulSoup   #引用BeautifulSoup库
import requests                 #引用requests
import os                       #os
import pandas as pd
import csv
import codecs

lst=[]
url='http://datachart.500.com/dlt/history/newinc/history.PHP?start=07001&end=21018'
r = requests.get(url)                     
r.encoding='utf-8'
text=r.text
soup = BeautifulSoup(text, "html.parser")
tbody=soup.find('tbody',id="tdata")
tr=tbody.find_all('tr')
td=tr[0].find_all('td')
for page in range(0,14016):
    td=tr[page].find_all('td')
    
    lst.append([td[0].text,td[1].text,td[2].text,td[3].text,td[4].text,td[5].text,td[6].text,td[7].text])
    with open("Lottery_data.csv",'w') as csvfile:
        writer = csv.writer(csvfile)
        writer.writerow(['期号','号码1', '号码2', '号码3', '号码4', '号码5', '号码6', '号码7'])
        writer.writerows(lst)
csvfile.close()

数据分析: 首先展示所有的彩票期号以及相应的中奖数字

 

而后通过5+2的模式分别初步分析最高频次的两组数据组合,比较模糊的计算出了本组合中奖概率为平均中奖几率的3倍(最终结果不直接展示而是在csv文件中以红色标明)

代码以及相应csv文件,点击下方蓝色字体即可

近期有很多朋友通过私信咨询有关Python学习问题。为便于交流,点击蓝色自己加入讨论解答资源基地


 

 

相关文章

功能概要:(目前已实现功能)公共展示部分:1.网站首页展示...
大体上把Python中的数据类型分为如下几类: Number(数字) ...
开发之前第一步,就是构造整个的项目结构。这就好比作一幅画...
源码编译方式安装Apache首先下载Apache源码压缩包,地址为ht...
前面说完了此项目的创建及数据模型设计的过程。如果未看过,...
python中常用的写爬虫的库有urllib2、requests,对于大多数比...