docs: def popular(self, period=DAILY):
          '''
          Get popular songs.
  
          :param period: time period
          :rtype: a generator generates :class:`Song` objects
  
          Time periods:
  
          +---------------------------------+-----------------------------------+
          | Constant                        | Meaning                           |
          +=================================+===================================+
          | :const:`Client.DAILY`           | Popular songs of this day         |
          +---------------------------------+-----------------------------------+
          | :const:`Client.MONTHLY`         | Popular songs of this month       |
          +---------------------------------+-----------------------------------+
          '''
          songs = self.connection.request(
              'popularGetSongs',
              {'type': period},
              self.connection.header('popularGetSongs'))[1]['Songs']
          return (Song.from_response(song, self.connection) for song in songs)