Skip to content

An asynchronous music downloader (from Youtube and Spotify). Built it because i'm sick of ads.

License

Notifications You must be signed in to change notification settings

hammamikhairi/Latom

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

65 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction

Latom, is an asynchronous song downloader that accepts Youtube and spotify links. The app currently supports downloading :

  • Singles
  • Playlists
  • Albums
  • Youtube Channels (entirely)
  • Artist's entire Portfolio.

This seemed like the perfect pet project to make and consequently learn from :)

Features

  • Installs Tracks Asynchronously ( can choose how many at a time in latom/.index.txt )
  • checks for existing songs in the ~/Music directory
  • can select which songs to download from a playlist/channel.
  • can remove unwanted songs from a playlist
  • can perform youtube search ( simply enter the query instead of the url )

Packages

Support

The following audio format is supported:

  • m4a

All Youtube link types are supported (channels, shorts...)
All Spotify link types are supported aswell (Artists, Albums, plalists ...)

Setup

to install the requirements

pip install -r ./latom/requirements.txt

to run the code

python ./latom/main.py

Note:

Pafy needs some adjustments :

The dislike button on youtube has been made private, so some modification on backend_youtube_dl.py is required to run pafy.

  1. Navigate to :
  • C:\Users\harsh\AppData\Local\Programs\Python\Python3.8\lib\site- packages\pafy
  • /home/user/.local/lib/python3.8/site-packages/pafy
  1. Open backend_youtube_dl.py file

  2. Comment or remove this code (line 54): self._dislikes = self._ydl_info['dislike_count']

About

An asynchronous music downloader (from Youtube and Spotify). Built it because i'm sick of ads.

Topics

Resources

License

Stars

Watchers

Forks

Languages