thesis.py 文件源码

python
阅读 18 收藏 0 点赞 0 评论 0

项目:lol-data-aggregator 作者: StickmanVentures 项目源码 文件源码
def get_teams(self, summoners):
        self.delay()

        error = True

        while error:
            try:
                teams = self.watcher.get_teams_for_summoners(summoners)
                error = False
            except LoLException:
                pass

        for key, value in teams.items():
            for item in value:
                try:
                    # Check if the team is 5x5.
                    if len(item['roster']['memberList']) < 5:
                        continue
                except KeyError:
                    # LoL api is stupid and sometimes forgets to put a key
                    # in it's api return when it should put null.
                    continue

                team = Team(item['fullId'])
                self.session.add(team)

                # Add all members in the 5x5 team to the summoners table.
                for member in item['roster']['memberList']:
                    roster_member = TeamRosterMember(team.id, member['playerId'])
                    self.session.add(roster_member)

                try:
                    self.session.commit()
                    print('New Team - %s' % team)
                except IntegrityError:
                    self.session.rollback()
                    print('Duplicate Team - %s' % team)
                    continue
                except FlushError:
                    self.session.rollback()
                    print('FlushError Team - %s' % team)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号