Voor zover ik weet, bestaat zoiets nog niet.
Afhankelijk van wat je nodig hebt, heb ik het grootste deel van de code om dit te doen al geschreven voor een project waar ik mee bezig ben. Ik scrape nu TCGPlayer en dat uitbreiden naar StarCity zou triviaal zijn.
Wat zou je ervan willen als ik het als API zou openstellen?
Op dit moment kan ik decklijsten zoeken op:
- Datumbereik
- Formaat
- Als Standard is gekozen, kunt u opgeven welke Standard
- Rank (welke decks wilt u? Alleen de 1e plaats? Alleen 5-8? 1e – 16?)
- Premium-events (vlag die gebruikersbrouwsels en kleine events uitfiltert)
Dan geef ik een array terug die elke lijst bevat. Elk element in de array is op zijn beurt een array die bevat:
- Decknaam
- Site waar de lijst vandaan komt
- URL waar de lijst te vinden is
- Deck ID (interne ID voor elk deck waarnaar op elke site wordt verwezen)
- URL voor de op MTGO geformatteerde versie van de gegevens (platte tekst)
- Spelersnaam
- Eventnaam / locatie
- Eventdatum
- Deckrang in event (op welke plaats is het geëindigd?
- Een array met de inhoud van het kaartspel.
De deck inhoud array bevat twee arrays:
- Main board
- Side board
Elke van deze twee arrays is een singleton geformatteerde lijst, dus in plaats van een regel die luidt:
3 Island
zou er staan:
IslandIslandIsland
Op die manier kun je dingen doen zoals de lengte van het deck teruggeven door alleen naar de lengte van de array te kijken en kun je gemakkelijker dingen doen zoals het deck in een simulator gooien of vectorruimte-zoekopdrachten uitvoeren.
Op dit moment is het gewoon een verzameling functies in mijn eigen applicatie die nog niet af is. Als ik dit zou openstellen als een API, naar welke functies zou je dan op zoek zijn? Het zou triviaal moeten zijn om dit te laten lopen en dan JSON data te retourneren.