Module: Exportify::Downloader
- Defined in:
- lib/exportify/downloader.rb
Class Method Summary collapse
Class Method Details
.download(track, output_dir) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/exportify/downloader.rb', line 7 def download(track, output_dir) artist = sanitize(track[:artist]) name = sanitize(track[:name]) query = "#{track[:raw_name]} #{track[:all_artists]} official audio" template = File.join(output_dir, "#{artist} - #{name}.%(ext)s") system( 'yt-dlp', "ytsearch1:#{query}", '--extract-audio', '--audio-format', 'mp3', '--audio-quality', '0', '--output', template, '--no-playlist', '--quiet', '--no-warnings' ) end |
.sanitize(str) ⇒ Object
21 22 23 |
# File 'lib/exportify/downloader.rb', line 21 def sanitize(str) str.gsub(%r{[/\\:*?"<>|]}, '').strip end |