[PR #35] [MERGED] Add --export-all-playlists feature #36

Closed
opened 2026-02-27 20:07:48 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/misiektoja/spotify_profile_monitor/pull/35
Author: @tomballgithub
Created: 2/14/2026
Status: Merged
Merged: 2/15/2026
Merged by: @misiektoja

Base: devHead: export_all


📝 Commits (10+)

  • dfe62f8 Add --export-all-playlists feature
  • 569cb42 Cleanup & simplify down to original function "spotify_print_public_playlists"
  • b8351a9 Restore missing import
  • 72bc4f0 Handle extension differently
  • 0c176b9 don't export a playlist that is 'IGNORED'
  • 26041f9 chore: handle pathvalidate dependency check
  • 47edf2b feat: gate --export-all-playlists to -i mode
  • be68b26 docs(readme): add usage of --export-all-playlists flag
  • 05ce732 chore: clarify help message for --export-all-playlists flag to indicate usage with --i
  • dee6acf chore: clarify help message for --export-all-playlists flag to indicate usage with -i

📊 Changes

2 files changed (+44 additions, -11 deletions)

View changed files

📝 README.md (+6 -0)
📝 spotify_profile_monitor.py (+38 -11)

📄 Description

When using the -i feature (user_profile_details), adding --export-all-playlists will additionally export each of the user's playlist into a .CSV file named after the playlist.

I used this to sanitize the filenames: from pathvalidate import sanitize_filename
There doesn't seem to be another modern option. I looked elsewhere because I didn't like that it allows "!" in the filename.
But I figured it was good enough.

- 'Stay100'
[ https://open.spotify.com/playlist/XXX?si=1 ]
[ songs: 26, likes: 0, collaborators: 1 ]
[ owner: XX ]
[ date: Tue 14 Aug 2018, 21:51:17 - 7 years, 5 months, 4 weeks ago ]
[ update: Mon 09 Oct 2023, 15:33:09 - 2 years, 4 months, 4 days ago ]
-- Exporting playlist to Stay100.csv
-- Export completed

And it continues for each playlist...

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/misiektoja/spotify_profile_monitor/pull/35 **Author:** [@tomballgithub](https://github.com/tomballgithub) **Created:** 2/14/2026 **Status:** ✅ Merged **Merged:** 2/15/2026 **Merged by:** [@misiektoja](https://github.com/misiektoja) **Base:** `dev` ← **Head:** `export_all` --- ### 📝 Commits (10+) - [`dfe62f8`](https://github.com/misiektoja/spotify_profile_monitor/commit/dfe62f8166939f2157aefb6ddc4dfbac6bfb9f19) Add --export-all-playlists feature - [`569cb42`](https://github.com/misiektoja/spotify_profile_monitor/commit/569cb425b5b46ad2620c962447bf29ac2beac2c5) Cleanup & simplify down to original function "spotify_print_public_playlists" - [`b8351a9`](https://github.com/misiektoja/spotify_profile_monitor/commit/b8351a93e61b92fb3a8a5d4c2283ba1b8a4509ad) Restore missing import - [`72bc4f0`](https://github.com/misiektoja/spotify_profile_monitor/commit/72bc4f03aad48b3dfc557d5ba5cd11aa0d8b4c79) Handle extension differently - [`0c176b9`](https://github.com/misiektoja/spotify_profile_monitor/commit/0c176b925a2bf0cd835d99396900bc41de344fcb) don't export a playlist that is 'IGNORED' - [`26041f9`](https://github.com/misiektoja/spotify_profile_monitor/commit/26041f954247e59a9898c8951a3dd1e9c40926c8) chore: handle pathvalidate dependency check - [`47edf2b`](https://github.com/misiektoja/spotify_profile_monitor/commit/47edf2b031a021703a50dce57464c67e919ec902) feat: gate --export-all-playlists to -i mode - [`be68b26`](https://github.com/misiektoja/spotify_profile_monitor/commit/be68b26e36ad6a30e42230e00d68ad493262b591) docs(readme): add usage of --export-all-playlists flag - [`05ce732`](https://github.com/misiektoja/spotify_profile_monitor/commit/05ce732409f4c162d09bfafab4fd26f000a3d3fe) chore: clarify help message for --export-all-playlists flag to indicate usage with --i - [`dee6acf`](https://github.com/misiektoja/spotify_profile_monitor/commit/dee6acfe8690d9b1b716d7b3bbb0afdba6322c30) chore: clarify help message for --export-all-playlists flag to indicate usage with -i ### 📊 Changes **2 files changed** (+44 additions, -11 deletions) <details> <summary>View changed files</summary> 📝 `README.md` (+6 -0) 📝 `spotify_profile_monitor.py` (+38 -11) </details> ### 📄 Description When using the -i feature (user_profile_details), adding --export-all-playlists will additionally export each of the user's playlist into a .CSV file named after the playlist. I used this to sanitize the filenames:` from pathvalidate import sanitize_filename` There doesn't seem to be another modern option. I looked elsewhere because I didn't like that it allows "!" in the filename. But I figured it was good enough. ``` - 'Stay100' [ https://open.spotify.com/playlist/XXX?si=1 ] [ songs: 26, likes: 0, collaborators: 1 ] [ owner: XX ] [ date: Tue 14 Aug 2018, 21:51:17 - 7 years, 5 months, 4 weeks ago ] [ update: Mon 09 Oct 2023, 15:33:09 - 2 years, 4 months, 4 days ago ] -- Exporting playlist to Stay100.csv -- Export completed And it continues for each playlist... ``` --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-27 20:07:48 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/spotify_profile_monitor#36
No description provided.