diff --git a/main.py b/main.py index 0d7abd8..4c2d68e 100755 --- a/main.py +++ b/main.py @@ -292,11 +292,15 @@ def main(): elif args.command == 'add': playlist = get_playlist_id(args.playlist) - pl_videos = {video['snippet']['resourceId']['videoId'] - for video in list_playlist(youtube, playlist)} + # {video_id: video_title} for videos already in the playlist + pl_videos = {pl_item['snippet']['resourceId']['videoId']: pl_item['snippet']['title'] + for pl_item in list_playlist(youtube, playlist)} + for video_id in args.video_ids: if video_id in pl_videos: - print(f'Video {video_id} already in playlist {args.playlist}') + short_title = _truncate_title(pl_videos[video_id]) + print(f"Video '{short_title}' [{video_id}]" + f" is already in playlist {args.playlist}") continue add_video_to_playlist(youtube, video_id, playlist, args.dry_run) @@ -307,13 +311,16 @@ def main(): next(reader, None) # skip the headers video_ids.extend(row[0] for row in reader if row) playlist = get_playlist_id(args.playlist) - pl_videos = {video['snippet']['resourceId']['videoId'] - for video in list_playlist(youtube, playlist)} + # {video_id: video_title} for videos already in the playlist + pl_videos = {pl_item['snippet']['resourceId']['videoId']: pl_item['snippet']['title'] + for pl_item in list_playlist(youtube, playlist)} if args.limit > 0: video_ids = video_ids[:args.limit] for video_id in video_ids: if video_id in pl_videos: - print(f'Video {video_id} already in playlist {args.playlist}') + short_title = _truncate_title(pl_videos[video_id]) + print(f"Video '{short_title}' [{video_id}]" + f" is already in playlist {args.playlist}") continue add_video_to_playlist(youtube, video_id, playlist, args.dry_run)