Refactored cards to be more clear and consistent.

This commit is contained in:
Nanda Scott 2018-02-06 22:01:08 -05:00
parent 7d87ad21b8
commit eee66d4826
8 changed files with 13 additions and 60 deletions

View File

@ -1,20 +1,6 @@
import asyncio, aiohttp import asyncio, aiohttp
class Autocomplete(object): class Autocomplete(object):
""" cards/autocomplete
Parameters:
query: str The string to autocomplete.
format: str The data format to return. Currently only supports JSON.
pretty: bool If true, the returned JSON will be prettified. Avoid using for production code.
Attributes:
object: str Returns the type of object it is.
total_items: int Returns the number of items in data.
data: arr The full autocompleted list.
"""
def __init__(self, query, **kwargs): def __init__(self, query, **kwargs):
self.query = query self.query = query
self.pretty = kwargs.get('pretty') self.pretty = kwargs.get('pretty')

View File

@ -1,12 +1,6 @@
from .scryfall_object import ScryfallObject from .cards_object import CardsObject
class Id(ScryfallObject):
""" cards/:id
Parameters:
id: str The Scryfall id of the card.
"""
class Id(CardsObject):
def __init__(self, **kwargs): def __init__(self, **kwargs):
self.id = kwargs.get('id') self.id = kwargs.get('id')
self.url = 'cards/' + str(self.id) self.url = 'cards/' + str(self.id)

View File

@ -1,7 +1,7 @@
import aiohttp import aiohttp
import asyncio import asyncio
class ScryfallObject(object): class CardsObject(object):
def __init__(self, _url, **kwargs): def __init__(self, _url, **kwargs):
self._url = 'https://api.scryfall.com/' + _url self._url = 'https://api.scryfall.com/' + _url
loop = asyncio.get_event_loop() loop = asyncio.get_event_loop()

View File

@ -1,13 +1,6 @@
from .scryfall_object import ScryfallObject from .cards_object import CardsObject
class Collector(ScryfallObject):
""" cards/:code/:collector_number
Parameters:
code: str The 3 or 4 letter set code.
collector_number: int The collector number of the card.
"""
class Collector(CardsObject):
def __init__(self, **kwargs): def __init__(self, **kwargs):
self.code = kwargs.get('code') self.code = kwargs.get('code')
self.collector_number = kwargs.get('collector_number') self.collector_number = kwargs.get('collector_number')

View File

@ -1,14 +1,7 @@
from .scryfall_object import ScryfallObject from .cards_object import CardsObject
import urllib.parse import urllib.parse
class Mtgo(ScryfallObject): class Mtgo(CardsObject):
""" cards/mtgo/:id
Parameters:
id: int The mtgo id of the card.
"""
def __init__(self, **kwargs): def __init__(self, **kwargs):
self.mtgoid = kwargs.get('id') self.mtgoid = kwargs.get('id')
self.url = 'cards/mtgo/' + str(self.mtgoid) self.url = 'cards/mtgo/' + str(self.mtgoid)

View File

@ -1,11 +1,6 @@
from .scryfall_object import ScryfallObject from .cards_object import CardsObject
class Multiverse(ScryfallObject):
"""
Parameters:
id: int The multiverse id of the card.
"""
class Multiverse(CardsObject):
def __init__(self, **kwargs): def __init__(self, **kwargs):
self.multiverseid = kwargs.get('id') self.multiverseid = kwargs.get('id')
self.url = 'cards/multiverse/' + self.multiverseid self.url = 'cards/multiverse/' + self.multiverseid

View File

@ -1,14 +1,7 @@
from .scryfall_object import ScryfallObject from .cards_object import CardsObject
import urllib.parse import urllib.parse
class Named(ScryfallObject): class Named(CardsObject):
"""
Parameters:
exact: str The exact card name to search for, case insenstive.
fuzzy: str A fuzzy card name to search for.
set: str A set code to limit the search to one set.
"""
def __init__(self, **kwargs): def __init__(self, **kwargs):
self.exact = kwargs.get('exact') self.exact = kwargs.get('exact')
self.fuzzy = kwargs.get('fuzzy') self.fuzzy = kwargs.get('fuzzy')

View File

@ -1,8 +1,7 @@
from .scryfall_object import ScryfallObject from .cards_object import CardsObject
class Random(ScryfallObject): class Random(CardsObject):
"""This will return a random card. No parameters are passed while creating."""
def __init__(self): def __init__(self):
self.url = 'cards/random' self.url = 'cards/random'
super(Random, self).__init__(self.url) super(Random, self).__init__(self.url)