Sha256: ce9f10fce7e79047ea51defb596cc5beb59a56597d9c11bb9c8d1d7170e462dd

Contents?: true

Size: 585 Bytes

Versions: 11

Compression:

Stored size: 585 Bytes

Contents

module Notu

  class LovedTracks

    include Listing

    def each(&block)
      return unless block_given?
      page_urls.each do |url|
        document = HtmlDocument.get(url)
        (document/'#user-loved-tracks-section tbody tr').each do |element|
          artist = (element/'td.chartlist-name .chartlist-artists').first.try(:text) || next
          title = (element/'td.chartlist-name .link-block-target').first.try(:text) || next
          yield(Track.new(artist: artist, title: title))
        end
      end
      nil
    end

    def path
      'loved'
    end

  end

end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
notu-2.0.1 lib/notu/loved_tracks.rb
notu-2.0.0 lib/notu/loved_tracks.rb
notu-1.0.6 lib/notu/loved_tracks.rb
notu-1.0.5 lib/notu/loved_tracks.rb
notu-1.0.4 lib/notu/loved_tracks.rb
notu-1.0.3 lib/notu/loved_tracks.rb
notu-1.0.2 lib/notu/loved_tracks.rb
notu-1.0.1 lib/notu/loved_tracks.rb
notu-1.0.0 lib/notu/loved_tracks.rb
notu-0.3.1 lib/notu/loved_tracks.rb
notu-0.3.0 lib/notu/loved_tracks.rb