docs: def fetch_entries(self):
          """Fetch data and parse it to build a list of broadcast entries."""
          current_time = ''
  
          data = []
          for row in self.get_rows():
              # Stop fetching data if limit has been met
              if exceeded_limit(self.limit, len(data)):
                  break
  
              entry = row.find_all('td')
              entry_dict = {}
  
              show_time = entry[0].string
              if show_time and show_time != current_time:
                  current_time = show_time
              if not show_time:
                  show_time = current_time
              entry_dict['time'] = show_time
  
              show_string = entry[1].string.split('(')
              show = show_string[0][:-1]
              net = self._get_net(show_string)
              if not self._match_query(show, net):
                  continue
  
              entry_dict['show'] = show
              entry_dict['net'] = net
              entry_dict['viewers'] = entry[3].string.strip('*')
              entry_dict['rating'], entry_dict['share'] = self._get_rating(entry)
  
              # Add data to initialize broadcast entry
              data.append(Entry(**entry_dict))
  
          return data