{"id":22541420,"url":"https://github.com/codeofandrin/srfvirus-spotify","last_synced_at":"2025-06-14T20:13:43.041Z","repository":{"id":257850433,"uuid":"865597356","full_name":"codeofandrin/srfvirus-spotify","owner":"codeofandrin","description":"Automated maintenance of SRF Virus playlists on Spotify","archived":false,"fork":false,"pushed_at":"2025-03-16T15:01:20.000Z","size":204,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-16T15:49:09.068Z","etag":null,"topics":["python","radio","spotify","spotify-api","spotify-web-api","srf","srgssr"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/codeofandrin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-09-30T19:45:19.000Z","updated_at":"2025-03-16T15:01:23.000Z","dependencies_parsed_at":"2024-10-16T18:20:45.474Z","dependency_job_id":"f31cc23c-bf23-4bc9-a265-412df3c97ebd","html_url":"https://github.com/codeofandrin/srfvirus-spotify","commit_stats":null,"previous_names":["puncher1/srfvirus-spotify","codeofandrin/srfvirus-spotify"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeofandrin%2Fsrfvirus-spotify","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeofandrin%2Fsrfvirus-spotify/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeofandrin%2Fsrfvirus-spotify/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeofandrin%2Fsrfvirus-spotify/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/codeofandrin","download_url":"https://codeload.github.com/codeofandrin/srfvirus-spotify/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245986947,"owners_count":20705310,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["python","radio","spotify","spotify-api","spotify-web-api","srf","srgssr"],"created_at":"2024-12-07T12:41:21.788Z","updated_at":"2025-03-28T07:26:51.289Z","avatar_url":"https://github.com/codeofandrin.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n    \u003cdiv align=\"center\"\u003e\n        \u003cimg src=\"assets/srfvirus_icon.png\" height=\"70px\"\u003e\n        \u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\n        \u003cimg src=\"assets/spotify_icon.png\" height=\"70px\"\u003e\n    \u003c/div\u003e\n    \u003ch1 align=\"center\"\u003eSRF Virus – Spotify\u003c/h1\u003e\n    \u003cp align=\"center\"\u003e\n        A script that automatically maintains multiple SRF Virus playlists on Spotify.\n    \u003c/p\u003e\n\u003c/p\u003e\n\n\u003cbr\u003e\n\n## About\n\nThere are following playlists this application maintains:\n- [SRF Virus: Trending Now](https://open.spotify.com/playlist/6c6OWdem6i3ekL60K1SiKu)\n- [SRF Virus: Top 100](https://open.spotify.com/playlist/0LeU6iPYgFSEJKIDpzOo3k)\n- [SRF Virus: Night Out](https://open.spotify.com/playlist/4By2u7VJKKvSwVRXQZ1UnN)\n\nRead more below.\n\n### SRF Virus: Trending Now\nThis playlist consists of current trending songs that are played on the SRF Virus radio channel. \n\nThe application adds songs to the playlist that are played at least three times within a week. \nIf a song is not played at least three times during the following week, it will be removed from the playlist.\n\n### SRF Virus: Top 100\nThis playlist consists of current top 100 most played songs on the SRF Virus radio channel.\n\nThe application increments the count of a song every time it's played. Then it sorts the songs by count\nand those in the top 100 that aren't in the playlist yet are added. Every song beyond the top 100\nis removed, if it's in the playlist. Also, if a song is not played anymore within two weeks, it's removed\nas well.\n\n### SRF Virus: Night Out\nThis playlist consists of current songs that are played on the SRF Virus radio channel during the \n\"Night Out\" program. The \"Night Out\" songs are played on Saturday between 20:00 and 23:59 (CET).\n\nThe application adds songs to the playlist that are played at least once within three weeks.\nIf a song is not played at least once during the next three weeks, it will be removed from the playlist.\n\n## Application Flow\n\nThe application is scheduled to run every 15min and uses the SRGSSR Audio API to retrieve played songs\non the SRF Virus radio channel as well as the Spotify Web API to maintain the playlist itself.\n\nThe application follows these steps:\n\n1. Get songs from the SRGSSR Audio API\n2. Filter out songs received from the SRGSSR Audio API that are redundant from the last request\n3. Search filtered songs on Spotify to get URI (song identifier)\n4. Add songs if they meet the criteria for the respective playlist\n5. Remove songs that don't meet the criteria anymore\n\n## Additional Links\n\n- [SRGSSR Audio API Docs](https://developer.srgssr.ch/api-catalog/srgssr-audio-0)\n- [Spotify Web API Docs](https://developer.spotify.com/documentation/web-api)\n\n## Disclaimer\n\nThis application is not affiliated with SRG SSR or Spotify and is not an official \napplication of one of these companies. The application was developed independently and uses \npublicly available data in accordance with its terms of use.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodeofandrin%2Fsrfvirus-spotify","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcodeofandrin%2Fsrfvirus-spotify","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodeofandrin%2Fsrfvirus-spotify/lists"}