-
Notifications
You must be signed in to change notification settings - Fork 0
/
bing_picture.py
41 lines (34 loc) · 999 Bytes
/
bing_picture.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
31
32
33
34
35
36
37
38
39
40
41
import http.client, urllib.request, urllib.parse, urllib.error
import json
import random
headers = {
# Request headers
'Ocp-Apim-Subscription-Key': '04c7bd61632f460ba42504b2d88f66c1',
}
params = urllib.parse.urlencode({
# Request parameters
'q': 'cats',
'count': '10',
'offset': '0',
'mkt': 'en-us',
'safeSearch': 'Moderate',
})
def find_picture(query):
params = urllib.parse.urlencode({
# Request parameters
'q': query,
'count': '10',
'offset': '0',
'mkt': "ru-RU",
'safeSearch': 'Moderate',
})
conn = http.client.HTTPSConnection('api.cognitive.microsoft.com')
conn.request("GET", "/bing/v7.0/images/search?%s" % params, "{body}", headers)
response = conn.getresponse()
data = json.load(response)
lenght = len(data["value"])
try:
minimum = min(10, lenght - 1)
return data["value"][random.randint(0, minimum)]["thumbnailUrl"]
except Exception:
return