Giter VIP home page Giter VIP logo

discogstospotify's Introduction

DiscogsToSpotify

A web application that creates a Spotify playlist based on a user's personal collection on Discogs. The application is written in client-side JavaScript with jQuery and Bootstrap. It uses the Web APIs that both Discogs and Spotify offer for Third Party Applications.

discogstospotify's People

Contributors

geroyche avatar lim93 avatar mattybalaam avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

discogstospotify's Issues

Vinyl Singles not found

I have hundreds of records with dance music that have one track on each side. Typically the Discogs title will be "Track A / Track B". Now, some labels chose to name the albums on Spotify like that as well, and there is a match in your search. However, many labels chose to name the Spotify album like the A side.
Just one just example each to make the point:

Match:
https://open.spotify.com/album/4N1xZdCPUPif2wYtfnTnnQ?si=REpoLLaAQe-fRg8IDPK_XA
https://www.discogs.com/501-Mind-Control-Hidden-Worlds/release/1716182

No Match:
https://open.spotify.com/album/70do9kzpwzySrARkWLFrbM?si=u18az7bnTH--nnbxaFdP0Q
https://www.discogs.com/Boxcutter-Allele-Other-People/release/2746044

I see two possible solutions:

  1. regex the title for this format, use only the first part if it's a match. This would be a pragmatic solution. I tested the search with some releases. If the album is called "Track A / Track B" on Spotify, searching for "Track A" will find it as well.
  2. be a bit more strict and only attempt this kind of search if the first search yields no result. this way might prevent some new ambiguities (say an artist has albums called "Foo / Volume x", "Foo / Volume y" etc), but on the other hand it adds new complexity (retry searches).

So I would prefer the first solution. If you agree, I can create a pull request. It's really a minor change that would create hundreds of new matches for my collection alone.

Support Discogs ANVs

Artist name variations have become a part of discogs, and part of the API response for a release.
Take this release:
https://www.discogs.com/Distance-My-Demons/release/899691

The api will return artist information with a name key (value "DJ Distance") and an anv key (value "Distance").
Your search extracts artist information from the name field, and a search on Spotify yields no result. Had we searched using the anv field, we would have had a match: https://open.spotify.com/album/0OunwPdyQkPtategY8yonA?si=7_PH890fRXe9LIZU2KSD0A

There is a simple solution: always use the anv value if it exists. The only question is, could this mean we lose some matches on Spotify? I still think it would be a worthy change, from my collection it seems that ANV will typically be the currently agreed upon most common name. But of course my collection is only "anecdotal evidence".
A more complex solution would of course require changes in your datastructures, maybe retried searches with anvs, etc....

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.