Sole Developer · 2020-2021
Apple Playlist Exporter
Stack: Selenium, Beautiful Soup
Motivation
A popular service but one that I do not use. However I have lots of family and friends with Apple accounts which have playlists that are locked to this service. The purpose of this tool is to create a stepping stone into importing and archiving these playlists for anyone that does not use Apple's services
Approach
Overall Logic structure is as follows:
- User is prompted for the apple playlist URL
- A log detailing playlists that have been saved is updated
- User is prompted to pick a method of fetching the HTML page to be parsed
- Method 1: Using a cached local copy
- Method 2: Using Selenium to fetch the page using gecko, the webdriver. It then caches the page
- The parsing algorithm extracts details about each track and displays this info in the terminal
Features
- First project where an independent python package was created as a dependency for the project
- Advanced Json parsing and file saving logic was implemented and used for the logging system
- Locally Cached files reduce retry attempt times dramatically