I have no idea what was changed, committing to push.

This commit is contained in:
Nanda Scott 2018-01-25 15:27:56 -05:00
parent 344fb53262
commit f7899f11b4
11 changed files with 570 additions and 121 deletions

View File

@ -0,0 +1,15 @@
<component name="ProjectDictionaryState">
<dictionary name="nanda">
<words>
<w>colorshifted</w>
<w>edhrec</w>
<w>futureshifted</w>
<w>highres</w>
<w>mana</w>
<w>mtgo</w>
<w>multiverse</w>
<w>scryfall</w>
<w>timeshifted</w>
</words>
</dictionary>
</component>

View File

@ -0,0 +1,21 @@
<component name="InspectionProjectProfileManager">
<profile version="1.0">
<option name="myName" value="Project Default" />
<inspection_tool class="PyPep8Inspection" enabled="true" level="WEAK WARNING" enabled_by_default="true">
<option name="ignoredErrors">
<list>
<option value="W191" />
<option value="E101" />
</list>
</option>
</inspection_tool>
<inspection_tool class="PyPep8NamingInspection" enabled="true" level="WEAK WARNING" enabled_by_default="true">
<option name="ignoredErrors">
<list>
<option value="N802" />
</list>
</option>
</inspection_tool>
<inspection_tool class="PyUnreachableCodeInspection" enabled="false" level="WARNING" enabled_by_default="false" />
</profile>
</component>

4
.idea/misc.xml Normal file
View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.6" project-jdk-type="Python SDK" />
</project>

8
.idea/modules.xml Normal file
View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/scrython.iml" filepath="$PROJECT_DIR$/.idea/scrython.iml" />
</modules>
</component>
</project>

11
.idea/scrython.iml Normal file
View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="PYTHON_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
<component name="TestRunnerService">
<option name="PROJECT_TEST_RUNNER" value="Unittests" />
</component>
</module>

6
.idea/vcs.xml Normal file
View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>

235
.idea/workspace.xml Normal file
View File

@ -0,0 +1,235 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ChangeListManager">
<list default="true" id="90008d80-8a8d-4e49-ac3c-faac0ecb9624" name="Default" comment="">
<change beforePath="$PROJECT_DIR$/cards/named.py" afterPath="$PROJECT_DIR$/cards/named.py" />
<change beforePath="$PROJECT_DIR$/cards/randomcard.py" afterPath="$PROJECT_DIR$/cards/randomcard.py" />
<change beforePath="$PROJECT_DIR$/requirements.txt" afterPath="$PROJECT_DIR$/requirements.txt" />
</list>
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
<option name="TRACKING_ENABLED" value="true" />
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
<option name="LAST_RESOLUTION" value="IGNORE" />
</component>
<component name="FileEditorManager">
<leaf>
<file leaf-file-name="scryfall_object.py" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/cards/scryfall_object.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="288">
<caret line="16" column="44" lean-forward="false" selection-start-line="16" selection-start-column="44" selection-end-line="16" selection-end-column="44" />
<folding>
<element signature="e#0#14#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="randomcard.py" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/cards/randomcard.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1332">
<caret line="74" column="9" lean-forward="true" selection-start-line="74" selection-start-column="9" selection-end-line="74" selection-end-column="9" />
<folding>
<element signature="e#0#14#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="multiverse.py" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/cards/multiverse.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding>
<element signature="e#0#23#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
</leaf>
</component>
<component name="Git.Settings">
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
</component>
<component name="IdeDocumentHistory">
<option name="CHANGED_PATHS">
<list>
<option value="$PROJECT_DIR$/cards/randomcard.py" />
<option value="$PROJECT_DIR$/cards/scryfall_object.py" />
<option value="$PROJECT_DIR$/cards/named.py" />
</list>
</option>
</component>
<component name="ProjectFrameBounds" extendedState="6">
<option name="width" value="1366" />
<option name="height" value="743" />
</component>
<component name="ProjectInspectionProfilesVisibleTreeState">
<entry key="Project Default">
<profile-state>
<expanded-state>
<State>
<id />
</State>
<State>
<id>Python</id>
</State>
</expanded-state>
<selected-state>
<State>
<id>PyPep8Inspection</id>
</State>
</selected-state>
</profile-state>
</entry>
</component>
<component name="ProjectLevelVcsManager">
<ConfirmationsSetting value="1" id="Add" />
</component>
<component name="ProjectView">
<navigator currentView="ProjectPane" proportions="" version="1">
<flattenPackages />
<showMembers />
<showModules />
<showLibraryContents />
<hideEmptyPackages />
<abbreviatePackageNames />
<autoscrollToSource />
<autoscrollFromSource />
<sortByType />
<manualOrder />
<foldersAlwaysOnTop value="true" />
</navigator>
<panes>
<pane id="Scope" />
<pane id="ProjectPane">
<subPane>
<expand>
<path>
<item name="scrython" type="b2602c69:ProjectViewProjectNode" />
<item name="scrython" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="scrython" type="b2602c69:ProjectViewProjectNode" />
<item name="scrython" type="462c0819:PsiDirectoryNode" />
<item name="cards" type="462c0819:PsiDirectoryNode" />
</path>
</expand>
<select />
</subPane>
</pane>
<pane id="Scratches" />
</panes>
</component>
<component name="PropertiesComponent">
<property name="last_opened_file_path" value="$PROJECT_DIR$" />
<property name="run.code.analysis.last.selected.profile" value="pProject Default" />
<property name="settings.editor.selected.configurable" value="preferences.keymap" />
</component>
<component name="RunDashboard">
<option name="ruleStates">
<list>
<RuleState>
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
</RuleState>
<RuleState>
<option name="name" value="StatusDashboardGroupingRule" />
</RuleState>
</list>
</option>
</component>
<component name="ShelveChangesManager" show_recycled="false">
<option name="remove_strategy" value="false" />
</component>
<component name="SvnConfiguration">
<configuration />
</component>
<component name="TaskManager">
<task active="true" id="Default" summary="Default task">
<changelist id="90008d80-8a8d-4e49-ac3c-faac0ecb9624" name="Default" comment="" />
<created>1516750438711</created>
<option name="number" value="Default" />
<option name="presentableId" value="Default" />
<updated>1516750438711</updated>
</task>
<servers />
</component>
<component name="ToolWindowManager">
<frame x="0" y="0" width="1366" height="743" extended-state="6" />
<layout>
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.17349927" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
<window_info id="Python Console" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
</layout>
</component>
<component name="VcsContentAnnotationSettings">
<option name="myLimit" value="2678400000" />
</component>
<component name="XDebuggerManager">
<breakpoint-manager>
<option name="time" value="2" />
</breakpoint-manager>
<watches-manager />
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/cards/named.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1494">
<caret line="83" column="12" lean-forward="true" selection-start-line="83" selection-start-column="12" selection-end-line="83" selection-end-column="12" />
<folding>
<element signature="e#0#14#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/cards/multiverse.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding>
<element signature="e#0#23#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/cards/randomcard.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1332">
<caret line="74" column="9" lean-forward="true" selection-start-line="74" selection-start-column="9" selection-end-line="74" selection-end-column="9" />
<folding>
<element signature="e#0#14#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/cards/scryfall_object.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="288">
<caret line="16" column="44" lean-forward="false" selection-start-line="16" selection-start-column="44" selection-end-line="16" selection-end-column="44" />
<folding>
<element signature="e#0#14#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</component>
</project>

View File

@ -1,5 +1,6 @@
import asyncio, aiohttp import aiohttp
import json import asyncio
class Named(object): class Named(object):
""" cards/named """ cards/named
@ -79,13 +80,13 @@ class Named(object):
self.scryfallJson = loop.run_until_complete(getRequest( self.scryfallJson = loop.run_until_complete(getRequest(
url='https://api.scryfall.com/cards/named?', url='https://api.scryfall.com/cards/named?',
params={ params={
'exact':self.exact, 'exact': self.exact,
'fuzzy':self.fuzzy, 'fuzzy': self.fuzzy,
'set':self.set, 'set': self.set,
'format':self.format, 'format': self.format,
'face':self.face, 'face': self.face,
'version':self.version, 'version': self.version,
'pretty':self.pretty 'pretty': self.pretty
})) }))
if self.scryfallJson['object'] == 'error': if self.scryfallJson['object'] == 'error':

View File

@ -1,8 +1,9 @@
import asyncio, aiohttp import aiohttp
import json import asyncio
class RandomCard(object): class RandomCard(object):
""" cards/random """ cards/random
Parameters: Parameters:
format: str The data format to return: json, text, or image. Defaults to json. format: str The data format to return: json, text, or image. Defaults to json.
@ -58,158 +59,158 @@ class RandomCard(object):
purchase_uris: dict A dictionary of links to purchase the card. purchase_uris: dict A dictionary of links to purchase the card.
""" """
def __init__(self, _format=None, face=None, version=None, pretty=None): def __init__(self, **kwargs):
self.format = _format self.format = kwargs.get('format')
self.face = face self.face = kwargs.get('face')
self.version = version self.version = kwargs.get('version')
self.pretty = pretty self.pretty = kwargs.get('pretty')
loop = asyncio.get_event_loop() loop = asyncio.get_event_loop()
self.session = aiohttp.ClientSession(loop=loop) self.session = aiohttp.ClientSession(loop=loop)
async def getRequest(url, **kwargs): async def getRequest(url, **kwargs):
async with self.session.get(url, **kwargs) as response: async with self.session.get(url, **kwargs) as response:
return await response.json() return await response.json()
self.scryfallJson = loop.run_until_complete(getRequest( self.scryfallJson = loop.run_until_complete(getRequest(
url='https://api.scryfall.com/cards/random?', url='https://api.scryfall.com/cards/random?',
params={ params={
'format':self.format, 'format': self.format,
'face':self.face, 'face': self.face,
'version':self.version, 'version': self.version,
'pretty':self.pretty 'pretty': self.pretty
})) }))
if self.scryfallJson['object'] == 'error': if self.scryfallJson['object'] == 'error':
raise Exception(self.scryfallJson['details']) raise Exception(self.scryfallJson['details'])
self.session.close() self.session.close()
self.session.close() self.session.close()
def object(self): def object(self):
return self.scryfallJson['object'] return self.scryfallJson['object']
def id(self): def id(self):
return self.scryfallJson['id'] return self.scryfallJson['id']
def multiverse_ids(self): def multiverse_ids(self):
return self.scryfallJson['multiverse_ids'] return self.scryfallJson['multiverse_ids']
def mtgo_id(self): def mtgo_id(self):
return self.scryfallJson['mtgo_id'] return self.scryfallJson['mtgo_id']
def mtgo_foil_id(self): def mtgo_foil_id(self):
return self.scryfallJson['mtgo_foil_id'] return self.scryfallJson['mtgo_foil_id']
def name(self): def name(self):
return self.scryfallJson['name'] return self.scryfallJson['name']
def uri(self): def uri(self):
return self.scryfallJson['uri'] return self.scryfallJson['uri']
def scryfall_uri(self): def scryfall_uri(self):
return self.scryfallJson['scryfall_uri'] return self.scryfallJson['scryfall_uri']
def layout(self): def layout(self):
return self.scryfallJson['layout'] return self.scryfallJson['layout']
def highres_image(self): def highres_image(self):
return self.scryfallJson['highres_image'] return self.scryfallJson['highres_image']
def image_uris(self): def image_uris(self):
return self.scryfallJson['image_uris'] return self.scryfallJson['image_uris']
def cmc(self): def cmc(self):
return self.scryfallJson['cmc'] return self.scryfallJson['cmc']
def type_line(self): def type_line(self):
return self.scryfallJson['type_line'] return self.scryfallJson['type_line']
def oracle_text(self): def oracle_text(self):
return self.scryfallJson['oracle_text'] return self.scryfallJson['oracle_text']
def mana_cost(self): def mana_cost(self):
return self.scryfallJson['mana_cost'] return self.scryfallJson['mana_cost']
def colors(self): def colors(self):
return self.scryfallJson['colors'] return self.scryfallJson['colors']
def color_identity(self): def color_identity(self):
return self.scryfallJson['color_identity'] return self.scryfallJson['color_identity']
def legalities(self): def legalities(self):
return self.scryfallJson['legalities'] return self.scryfallJson['legalities']
def reserved(self): def reserved(self):
return self.scryfallJson['reserved'] return self.scryfallJson['reserved']
def reprint(self): def reprint(self):
return self.scryfallJson['reprint'] return self.scryfallJson['reprint']
def set(self): def set(self):
return self.scryfallJson['set'] return self.scryfallJson['set']
def set_name(self): def set_name(self):
return self.scryfallJson['set_name'] return self.scryfallJson['set_name']
def set_uri(self): def set_uri(self):
return self.scryfallJson['set_uri'] return self.scryfallJson['set_uri']
def set_search_uri(self): def set_search_uri(self):
return self.scryfallJson['set_search_uri'] return self.scryfallJson['set_search_uri']
def scryfall_set_uri(self): def scryfall_set_uri(self):
return self.scryfallJson['scryfall_set_uri'] return self.scryfallJson['scryfall_set_uri']
def rulings_uri(self): def rulings_uri(self):
return self.scryfallJson['rulings_uri'] return self.scryfallJson['rulings_uri']
def prints_search_uri(self): def prints_search_uri(self):
return self.scryfallJson['prints_search_uri'] return self.scryfallJson['prints_search_uri']
def collector_number(self): def collector_number(self):
return self.scryfallJson['collector_number'] return self.scryfallJson['collector_number']
def digital(self): def digital(self):
return self.scryfallJson['digital'] return self.scryfallJson['digital']
def rarity(self): def rarity(self):
return self.scryfallJson['rarity'] return self.scryfallJson['rarity']
def illustration_id(self): def illustration_id(self):
return self.scryfallJson['illustration_id'] return self.scryfallJson['illustration_id']
def artist(self): def artist(self):
return self.scryfallJson['artist'] return self.scryfallJson['artist']
def frame(self): def frame(self):
return self.scryfallJson['frame'] return self.scryfallJson['frame']
def full_art(self): def full_art(self):
return self.scryfallJson['full_art'] return self.scryfallJson['full_art']
def border_color(self): def border_color(self):
return self.scryfallJson['border_color'] return self.scryfallJson['border_color']
def timeshifted(self): def timeshifted(self):
return self.scryfallJson['timeshifted'] return self.scryfallJson['timeshifted']
def colorshifted(self): def colorshifted(self):
return self.scryfallJson['colorshifted'] return self.scryfallJson['colorshifted']
def futureshifted(self): def futureshifted(self):
return self.scryfallJson['futureshifted'] return self.scryfallJson['futureshifted']
def edhrec_rank(self): def edhrec_rank(self):
return self.scryfallJson['edhrec_rank'] return self.scryfallJson['edhrec_rank']
def currency(self, mode): def currency(self, mode):
modes = ['usd', 'eur', 'tix'] modes = ['usd', 'eur', 'tix']
if mode not in modes: if mode not in modes:
return KeyError("That currency is not available.") return KeyError("That currency is not available.")
return self.scryfallJson[mode] return self.scryfallJson[mode]
def related_uris(self): def related_uris(self):
return self.scryfallJson['related_uris'] return self.scryfallJson['related_uris']
def purchase_uris(self): def purchase_uris(self):
return self.scryfallJson['purchase_uris'] return self.scryfallJson['purchase_uris']

146
cards/scryfall_object.py Normal file
View File

@ -0,0 +1,146 @@
import aiohttp
import asyncio
class ScryfallObject(object):
"""docstring for ScryfallObject."""
def __init__(self, **kwargs):
self.format = kwargs.get('format')
self.face = kwargs.get('face')
self.version = kwargs.get('version')
self.pretty = kwargs.get('pretty')
loop = asyncio.get_event_loop()
self.session = aiohttp.ClientSession(loop=loop)
async def getRequest(url, **kwargs):
async with self.session.get(url, **kwargs) as response:
return await response.json()
def object(self):
return self.scryfallJson['object']
def id(self):
return self.scryfallJson['id']
def multiverse_ids(self):
return self.scryfallJson['multiverse_ids']
def mtgo_id(self):
return self.scryfallJson['mtgo_id']
def mtgo_foil_id(self):
return self.scryfallJson['mtgo_foil_id']
def name(self):
return self.scryfallJson['name']
def uri(self):
return self.scryfallJson['uri']
def scryfall_uri(self):
return self.scryfallJson['scryfall_uri']
def layout(self):
return self.scryfallJson['layout']
def highres_image(self):
return self.scryfallJson['highres_image']
def image_uris(self):
return self.scryfallJson['image_uris']
def cmc(self):
return self.scryfallJson['cmc']
def type_line(self):
return self.scryfallJson['type_line']
def oracle_text(self):
return self.scryfallJson['oracle_text']
def mana_cost(self):
return self.scryfallJson['mana_cost']
def colors(self):
return self.scryfallJson['colors']
def color_identity(self):
return self.scryfallJson['color_identity']
def legalities(self):
return self.scryfallJson['legalities']
def reserved(self):
return self.scryfallJson['reserved']
def reprint(self):
return self.scryfallJson['reprint']
def set(self):
return self.scryfallJson['set']
def set_name(self):
return self.scryfallJson['set_name']
def set_uri(self):
return self.scryfallJson['set_uri']
def set_search_uri(self):
return self.scryfallJson['set_search_uri']
def scryfall_set_uri(self):
return self.scryfallJson['scryfall_set_uri']
def rulings_uri(self):
return self.scryfallJson['rulings_uri']
def prints_search_uri(self):
return self.scryfallJson['prints_search_uri']
def collector_number(self):
return self.scryfallJson['collector_number']
def digital(self):
return self.scryfallJson['digital']
def rarity(self):
return self.scryfallJson['rarity']
def illustration_id(self):
return self.scryfallJson['illustration_id']
def artist(self):
return self.scryfallJson['artist']
def frame(self):
return self.scryfallJson['frame']
def full_art(self):
return self.scryfallJson['full_art']
def border_color(self):
return self.scryfallJson['border_color']
def timeshifted(self):
return self.scryfallJson['timeshifted']
def colorshifted(self):
return self.scryfallJson['colorshifted']
def futureshifted(self):
return self.scryfallJson['futureshifted']
def edhrec_rank(self):
return self.scryfallJson['edhrec_rank']
def currency(self, mode):
modes = ['usd', 'eur', 'tix']
if mode not in modes:
return KeyError("That currency is not available.")
return self.scryfallJson[mode]
def related_uris(self):
return self.scryfallJson['related_uris']
def purchase_uris(self):
return self.scryfallJson['purchase_uris']

View File

@ -1 +1,2 @@
aiohttp
#Requirements for PyPI #Requirements for PyPI