-
Notifications
You must be signed in to change notification settings - Fork 0
/
oxfordlookapp.py
30 lines (23 loc) · 1022 Bytes
/
oxfordlookapp.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import requests
app_id = "62b446b5"
app_key = "c2fe6960887f53b88999a767283d7e34"
language = "en-gb"
def getDefinitions(word_id):
url = "https://od-api.oxforddictionaries.com:443/api/v2/entries/" + language + "/" + word_id.lower()
r = requests.get(url, headers={"app_id": app_id, "app_key": app_key})
res = r.json()
if 'error' in res.keys():
return False
output = {}
senses = res['results'][0]['lexicalEntries'][0]['entries'][0]['senses']
definitions = []
for sense in senses:
definitions.append(f"👉 {sense['definitions'][0]}")
output['definitions'] = "\n".join(definitions)
if res['results'][0]['lexicalEntries'][0]['entries'][0]['pronunciations'][0].get('audioFile'):
output['audio'] = res['results'][0]['lexicalEntries'][0]['entries'][0]['pronunciations'][0]['audioFile']
return output
# if __name__ == '__main__':
# from pprint import pprint as print
# print(getDefinitions('Great Britain'))
# print(getDefinitions('sdsdsdsds'))