Условие для json файла
Помогите написать условие, если делаю так при удачном отправлении выдает req['response'] и получаю ошибку так как скрипт не может найти req['error']['error_code']
json ответ:
{'error': {'error_code': 14, 'error_msg': 'Captcha needed', 'request_params': [{'key': 'type', 'value': 'post'}, {'key': 'owner_id', 'value': '458306152'}, {'key': 'item_id', 'value': '4885'}, {'key': 'v', 'value': '5.131'}, {'key': 'expires_in', 'value': '0'}, {'key': 'method', 'value': 'likes.add'}, {'key': 'oauth', 'value': '1'}], 'captcha_sid': '458887933540', 'captcha_img': 'https://api.vk.com/captcha.php?sid=458887933540&s=1'}}
Код:
url = 'https://api.vk.com/method/likes.add?type=%s&owner_id=%s&item_id=%s&v=5.131&access_token=%s' % (type_name, owner_id, item_id, token)
req = requests.post(url).json()
error = req['error']['error_code']
if error == 14:
captcha_sid = req['error']['captcha_sid']
captcha_img = req['error']['captcha_img']
with open('newfile.jpg', 'wb') as target:
a = requests.post(f'{captcha_img}')
target.write(a.content)
captcha_key = vc.solve(image='newfile.jpg')
#print(captcha_key)
url = 'https://api.vk.com/method/likes.add?captcha_sid=%s&captcha_key%s&type=%s&owner_id=%s&item_id=%s&v=5.131&access_token=%s' % (captcha_sid, captcha_key, type_name, owner_id, item_id, token)
req = requests.post(url).json()
print(req)
Ответы (1 шт):
Автор решения: team arden
→ Ссылка
try:
if req != req['response']['likes']:
continue
except:
error = req['error']['error_code']
if error == 14:
print("error")