Exemple #1
0
 def __post_init__(self):
     if isinstance(self._data, str):
         self._data = BeautifulSoup(self._data)
     div_main = self._data.find('div', class_=re.compile(
         'column_main')) or BeautifulSoup()
     elem = div_main.find('div', class_=re.compile('league'))
     self.league = clr_txt(elem.get_text()) if elem else self.league
     div_info = div_main.find('div',
                              class_=re.compile('info')) or BeautifulSoup()
     elem = div_info.a
     self.href = elem.get('href') if elem else self.href
     members = [element.string for element in
                elem.find_all('span')] if elem else []
     self.member_1 = '' if not members or len(members) < 1 else members[0]
     self.member_2 = '' if not members or len(members) < 2 else members[1]
     elem = div_info.find('div', re.compile('total'))
     self._total_score = clr_txt(elem.get_text()) if elem else ''
     self.bets = [LigastavokBetData(self._data)]
Exemple #2
0
 def bets(self):
     if not self._bets:
         outcomes = self.event_raw_data.find('div',
                                             re.compile('column_outcome'))
         bets = []
         if outcomes:
             for outcome in outcomes.find_all(
                     'div', re.compile('bui-group-outcome__wrapper')):
                 bets.append([
                     clr_txt(element.string)
                     for element in outcome.div.contents
                     if element.name == 'div'
                 ])
         self._bets = bets
     return self._bets
Exemple #3
0
    def __post_init__(self):
        self._snapshot_time = datetime.datetime.now()
        div_main = self._data.find('div', class_=re.compile(
            'column_main')) or BeautifulSoup()
        elem = div_main.find('div', class_=re.compile('status'))
        self.status = clr_txt(elem.get_text()) if elem else ""
        div_info = div_main.find('div',
                                 class_=re.compile('info')) or BeautifulSoup()

        elem = div_info.find('div', re.compile('current'))
        self.current_score = clr_txt(elem.get_text()) if elem else ''

        elem = div_info.find('div', re.compile('total'))
        self.total_score = clr_txt(elem.get_text()) if elem else ''
        div_outcomes = self._data.find('div', re.compile('column_outcome'))
        bets = []
        if div_outcomes:
            for outcome in div_outcomes.find_all('div', re.compile(
                    'bui-group-outcome__wrapper')):
                bets.append(
                    [clr_txt(element.string)
                     for element in outcome.div.contents
                     if element.name == 'div'])
        self.bets = bets
Exemple #4
0
 def total_score(self):
     if not self._total_score:
         total_score = self.div_info.find('div', re.compile('total'))
         self._total_score = clr_txt(
             total_score.get_text()) if total_score else ''
     return self._total_score
Exemple #5
0
 def current_score(self):
     if not self._current_score:
         current_score = self.div_info.find('div', re.compile('current'))
         self._current_score = clr_txt(
             current_score.get_text()) if current_score else ''
     return self._current_score
Exemple #6
0
 def status(self):
     if not self._status:
         elem = self.div_main.find('div', class_=re.compile('status'))
         self._status = clr_txt(elem.get_text()) if elem else ""
     return self._status
Exemple #7
0
 def league(self):
     if not self._league:
         elem = self.div_main.find('div', class_=re.compile("league"))
         self._league = clr_txt(elem.get_text()) if elem else ""
     return self._league