From 286d663f05c03b56b6510080db806794b4891150 Mon Sep 17 00:00:00 2001 From: Aki Date: Wed, 25 May 2022 18:48:11 +0200 Subject: Added type details and moved esi stuff to own module --- salvager/esi.py | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 salvager/esi.py (limited to 'salvager') diff --git a/salvager/esi.py b/salvager/esi.py new file mode 100644 index 0000000..4783e12 --- /dev/null +++ b/salvager/esi.py @@ -0,0 +1,34 @@ +import requests + + +def _make_endpoint(path, include=None, exclude=None, trim=None): + def _trim(data): + if include: + data = {k: v for k, v in data.items() if k in include} + if exclude: + for key in exclude: + if key in data: + del data[key] + return data + + if not callable(trim): + trim = _trim + + def _get(*args): + query = "https://esi.evetech.net/latest/" + path + "?datasource=tranquility" + response = requests.get(query.format(*args)) + response.raise_for_status() + return trim(response.json()) + + return _get + + +def _trim_killmail(km): + del km['attackers'] + del km['victim']['items'] + del km['victim']['damage_taken'] + return km + + +killmail = _make_endpoint("killmails/{}/{}/", trim=_trim_killmail) +type = _make_endpoint("universe/types/{}/", include=['type_id', 'name', 'group_id']) -- cgit v1.1