Compare commits
2 Commits
6393c9e187
...
2e110521e6
| Author | SHA1 | Date | |
|---|---|---|---|
| 2e110521e6 | |||
| ef06282eb1 |
62
breakbeat_temas songs
Normal file
62
breakbeat_temas songs
Normal file
@@ -0,0 +1,62 @@
|
||||
01 - Raw As F**k - The Slammer (12" Vinyl HD)
|
||||
02 - Crack DJ's - OK Run!
|
||||
03 - Unsolved Mysteries
|
||||
04 - Lords of Motion (Breaks Remix) (Aquasky Vs. Masterblaster)
|
||||
05 - X-Ray (Follow Me)
|
||||
06 - Tu Café (Deekline & Ed Solo Remix)
|
||||
07 - Cut & Run - No Good
|
||||
08 - Multiply & ED 209 - You Nnow
|
||||
09 - Josh Wink - Higher State Of Consciousness Original
|
||||
10 - Buzzthrill - Everybody In The House (Get Some Mix)
|
||||
11 - sugar - the feeling (powertools acid funk mix)
|
||||
12 - Friction & Spice - Groove Me (Original Mix)
|
||||
13 - Lula - Man = Drug (Sfx Beat Remix)
|
||||
14 - MOSEH NAIM - NEEM (Shooting Star)
|
||||
15 - DA HOOL :: Hypochondria (KULTÜR Breaks Remix)
|
||||
16 - monstah freakz - thats right! (dj kultur + jan-b remix)
|
||||
17 - Milk Inc - La Vache ( Kultur Remix) + Lula - Men&Drugs (Rasco&Isy Remix)
|
||||
18 - LA RISSA - I DO BOTH JAY AND JANE (Sireena Breakbeat)
|
||||
19 - WOOKIE - BACK UP (Dj Zinc Remix)
|
||||
20 - GROOVKIDZ - I FEEL THIS WAY (DJ Razzz & Mojo´s Ultrapure Mix)
|
||||
21 - Dj Mike B - Feel My Energy (Original Mix)
|
||||
22 - Da Antidote
|
||||
23 - Disco Biscuit (Remastered)
|
||||
24 - Dj Quest & Ken Mac vs Backdraft - The Prophecy
|
||||
25 - FROG JUNKIES AIR GUITAR serious acid mix
|
||||
26 - The Dust Brothers - Chemical Beats
|
||||
27 - You And Me
|
||||
28 - Hankook - 303 (Original Mix) [Distortion Records]
|
||||
29 - Micro - Fall Into Me (DJ Icey Remix)
|
||||
30 - DJ Defkline And Red Polo - Felix Hustle
|
||||
31 - Kiero Breakbeat
|
||||
32 - BASCO - THE BEAT IS OVER (Original Mix)
|
||||
33 - Krome & Time - The Slammer (1993)
|
||||
34 - Brothers Of Dub -Same Frequency ( Future Funk Squad's 'Sonic Correction' Remix ) [ FREE DOWNLOAD ]
|
||||
35 - Nasty
|
||||
36 - Fresh Flamenco
|
||||
37 - Don't you want me (Breakbeat)
|
||||
38 - 1993
|
||||
39 - Feel The Vibe
|
||||
40 - Breaks | Müme - Finger Lickin [Phreak Recordings]
|
||||
41 - Mute (ES) - Old School Flavour (Original Mix) [Distorsion Records]
|
||||
42 - Karma
|
||||
43 - Perfect Kombo Ft. Viper X - Go To The Guadalpark (Original Mix).wmv
|
||||
44 - Tucu Tucu
|
||||
45 - Cat Hedral
|
||||
46 - Oscar - M.A.D. (Mental Ability To Be Different)
|
||||
47 - The Dj's Project - Funk-Da-Fried-Party (Original Mix)
|
||||
48 - Dylan Rhymes - Naked & Ashamed (Original Mix)
|
||||
49 - Buzzthrill - Come With Me (Kelly Reverb She's A Goner Mix)
|
||||
50 - Red Alien Feat. Afrika Islam - Red Alien (Zulu Beats Mix)
|
||||
51 - Envelope - Electronic Love (Extended Mix)
|
||||
52 - DJ I.C.O.N. - Voco Me (Breakbeat Remix)
|
||||
53 - House Empire - Excuse Me (Break Beat Mix)
|
||||
54 - Let's Get Loco
|
||||
55 - Scania
|
||||
56 - Death Race
|
||||
57 - Mike Reitmayer - Cafe Del Mar (Remix 5° Aniversario)
|
||||
58 - 2 Funky in Here (Maceo Rivas & Dr Black Sheep Remix)
|
||||
59 - Novy vs Eniac – Smoke Dis (Original Mix) [Breakbeat]
|
||||
60 - X-Perimental II
|
||||
61 - DJ Icey - Low Down Good Girl
|
||||
62 - Electroliners - Loose Caboose
|
||||
@@ -30,7 +30,7 @@ def get_playlist_length(youtube, playlist_id):
|
||||
|
||||
return playlist_info['items'][0]['contentDetails']['itemCount']
|
||||
|
||||
def list_songs(youtube, channel_id):
|
||||
def list_songs(youtube, channel_id, stdout=False):
|
||||
max_results = 50
|
||||
request = youtube.playlistItems().list(
|
||||
part="snippet,contentDetails",
|
||||
@@ -41,9 +41,15 @@ def list_songs(youtube, channel_id):
|
||||
print()
|
||||
|
||||
# Process the first page of results
|
||||
deleted = 0
|
||||
songs_list = []
|
||||
|
||||
for idx, item in enumerate(response['items'], start=1):
|
||||
title = item['snippet']['title']
|
||||
print(f"{idx:02d} - {title}")
|
||||
if title == "Deleted video":
|
||||
deleted += 1
|
||||
continue
|
||||
songs_list.append(f"{idx-deleted:02d} - {title}")
|
||||
|
||||
# Continue making requests for additional pages using pageToken
|
||||
new_starting = 51
|
||||
@@ -55,12 +61,28 @@ def list_songs(youtube, channel_id):
|
||||
pageToken=response['nextPageToken']
|
||||
)
|
||||
response = request.execute()
|
||||
|
||||
# Process the results for the additional pages
|
||||
for idx, item in enumerate(response['items'], start=new_starting):
|
||||
title = item['snippet']['title']
|
||||
print(f"{idx:02d} - {title}")
|
||||
if title == "Deleted video":
|
||||
deleted += 1
|
||||
continue
|
||||
songs_list.append(f"{idx-deleted:02d} - {title}")
|
||||
new_starting += 50
|
||||
|
||||
if stdout:
|
||||
# Print to standard output
|
||||
print("\n".join(songs_list))
|
||||
|
||||
get_key_by_value = lambda dict, val: next((k for k, v in dict.items() if v == val), None)
|
||||
|
||||
channel_name = get_key_by_value(channels, channel_id)
|
||||
|
||||
# Save to file if output_file is provided
|
||||
with open(f"{channel_name} songs", 'w', encoding='utf-8') as file:
|
||||
file.write("\n".join(songs_list))
|
||||
|
||||
def add_song(youtube, channel_id, song):
|
||||
pos = get_playlist_length(youtube, channel_id)
|
||||
|
||||
@@ -83,23 +105,17 @@ def add_song(youtube, channel_id, song):
|
||||
|
||||
def main():
|
||||
parser = argparse.ArgumentParser(description="Manage YouTube playlist songs.")
|
||||
parser.add_argument("channel_name", help="Name of the YouTube channel")
|
||||
parser.add_argument(
|
||||
"--list",
|
||||
action="store_true",
|
||||
help="List all songs in the playlist"
|
||||
)
|
||||
parser.add_argument(
|
||||
"--add",
|
||||
nargs=2,
|
||||
metavar=("channel", "song"),
|
||||
help="Add to the playlist a song"
|
||||
)
|
||||
parser.add_argument("-l", "--list", action="store_true", help="List songs in the playlist")
|
||||
parser.add_argument("-a", "--add", metavar="song", help="Add a song to the playlist")
|
||||
parser.add_argument("channel_name", help="Name of the playlist")
|
||||
|
||||
args = parser.parse_args()
|
||||
channel_name = args.channel_name
|
||||
channel_id = channels.get(channel_name)
|
||||
|
||||
if not args.list and not args.add:
|
||||
parser.error("Please provide either -l or -a option.")
|
||||
|
||||
if not channel_id:
|
||||
print(f"Error: Channel '{channel_name}' not found.")
|
||||
return
|
||||
@@ -121,16 +137,14 @@ def main():
|
||||
credentials=credentials)
|
||||
|
||||
if args.list:
|
||||
list_songs(youtube, channel_id)
|
||||
list_songs(youtube, channel_id, stdout=False)
|
||||
elif args.add:
|
||||
target_channel, song = args.add
|
||||
song = args.add
|
||||
# # this assumes a song is passed as in either of the following ways
|
||||
# # https://youtu.be/eEnyi9L6KP4 --> split by "/"
|
||||
# # https://youtube.com/watch?v=Ez-gizOF0Wo --> split by "="
|
||||
song = re.split(r"/|=", song)[-1]
|
||||
add_song(youtube, channels.get(target_channel), song)
|
||||
else:
|
||||
print("Invalid command. Use --list or --add.")
|
||||
add_song(youtube, channel_id, song)
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
||||
Reference in New Issue
Block a user