最简洁的方法获取LOL比赛场次列表

1.数据来源

我们需要知道的是,LOL比赛数据主要来源于官网。


image.png

每场比赛赛事都有唯一的ID,我们记住这ID且通过的这个ID能得到我们想要的数据信息。点击查看比赛详情即可。

2.开始处理

我们以其中一场比赛数据为例,来对当天场次的这场比赛总共打了多少场比赛。也就是BO几。


image.png

我们可以看到,当天该场次比赛总共打了4场,我们接下来通过代码去验证是否正确。
我们先看程序执行的结果,可以看到与实际的结果相符,总共四场。

[{'race_id': '68482', 'match_id_list': ['74605', '74606', '74607', '74608']}]
def run(self, *args):
    match_id_list = []
    response = requests.get(self.url % args[0], headers=self.hearders).text
    bs = BeautifulSoup(response, "lxml")
    _labels = bs.select("body > div > div.content > div.left > div:nth-of-type(1) > div > a")
    for game_label in _labels:
        if game_label.has_attr("data-matchid"):
            match_id_list.append(game_label["data-matchid"])
    return [{
        "race_id": args[0],
        "match_id_list": match_id_list
    }]

采用BeautifulSoup.select对html文件读取解析,按标签层次找到所需要的数据。

想要获取更多信息,请参考原文

你可能感兴趣的:(最简洁的方法获取LOL比赛场次列表)