[extractor/common] Add support multiple getters in try_get

pull/8/head
Sergey M․ 8 years ago
parent bae1404893
commit a32a9a7ef5
No known key found for this signature in database
GPG Key ID: 2C393E0F18A9236D

@ -2103,8 +2103,11 @@ def dict_get(d, key_or_keys, default=None, skip_false_values=True):
def try_get(src, getter, expected_type=None): def try_get(src, getter, expected_type=None):
if not isinstance(getter, (list, tuple)):
getter = [getter]
for get in getter:
try: try:
v = getter(src) v = get(src)
except (AttributeError, KeyError, TypeError, IndexError): except (AttributeError, KeyError, TypeError, IndexError):
pass pass
else: else:

Loading…
Cancel
Save