Чтение с JSON Keeper 'а

alex77bel

Новичок
Пользователь
Ноя 20, 2022
8
1
3
Привет. Вопрос по JSON Keeper 'у. Выложил туда JSON. Взял ссылку.
Хочу прочитать:

Код:
from requests import get
JSON_LINK = 'https://jsonkeeper.com/b/JMJK'
def load_json(link: str) -> list:
    response = get(link)
    return response.json()
print(load_json(JSON_LINK))

получаю ошибку
"requests.exceptions.SSLError: ... CertificateError("hostname 'jsonkeeper.com' doesn't match 'www.jsonkeeper.com'""

Как я понимаю, что-то с сертификатами не так.
Если устанавливаю флаг "verify=False"

Код:
response = get(link, verify=False)

работает, но с предупреждением

"... InsecureRequestWarning: Unverified HTTPS request is being made to host 'jsonkeeper.com'.
Adding certificate verification is strongly advised...."

Вроде бы и работает, но не совсем красиво. Что делаю не так? Как сделать, чтобы все было красиво?
Еще интересно, это так у всех работать будет или только у меня на машине?
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 580
457
83
Привет. Вопрос по JSON Keeper 'у. Выложил туда JSON. Взял ссылку.
Хочу прочитать:

Код:
from requests import get
JSON_LINK = 'https://jsonkeeper.com/b/JMJK'
def load_json(link: str) -> list:
    response = get(link)
    return response.json()
print(load_json(JSON_LINK))

получаю ошибку
"requests.exceptions.SSLError: ... CertificateError("hostname 'jsonkeeper.com' doesn't match 'www.jsonkeeper.com'""

Как я понимаю, что-то с сертификатами не так.
Если устанавливаю флаг "verify=False"

Код:
response = get(link, verify=False)

работает, но с предупреждением

"... InsecureRequestWarning: Unverified HTTPS request is being made to host 'jsonkeeper.com'.
Adding certificate verification is strongly advised...."

Вроде бы и работает, но не совсем красиво. Что делаю не так? Как сделать, чтобы все было красиво?
Еще интересно, это так у всех работать будет или только у меня на машине?
вам нужно добавить\обновить сертификат для requests
 

robisho

Активный пользователь
Пользователь
Окт 19, 2020
151
26
28
можно добавить после всех импортов requests.packages.urllib3.disable_warnings(InsecureRequestWarning), это уберет предупреждения.
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 580
457
83
можно добавить после всех импортов requests.packages.urllib3.disable_warnings(InsecureRequestWarning), это уберет предупреждения.
не надо так делать...
 

alex77bel

Новичок
Пользователь
Ноя 20, 2022
8
1
3
Ура! Проблему решил. С сертификатами был порядок. Меня привлекла фраза "hostname 'jsonkeeper.com' doesn't match 'www.jsonkeeper.com'""
После чего я исправил руками JSON_LINK = 'https://jsonkeeper.com/b/JMJK' на JSON_LINK = 'https://www.jsonkeeper.com/b/JMJK' и все заработало как часы. Странноватая работа проверки сертификатов.
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 580
457
83
Ура! Проблему решил. С сертификатами был порядок. Меня привлекла фраза "hostname 'jsonkeeper.com' doesn't match 'www.jsonkeeper.com'""
После чего я исправил руками JSON_LINK = 'https://jsonkeeper.com/b/JMJK' на JSON_LINK = 'https://www.jsonkeeper.com/b/JMJK' и все заработало как часы. Странноватая работа проверки сертификатов.
сертификат выдается на домен или айпи адрес, домен был не верен, поэтому ругался
 

alex77bel

Новичок
Пользователь
Ноя 20, 2022
8
1
3
сертификат выдается на домен или айпи адрес, домен был не верен, поэтому ругался
Все правильно, и странно что сам JSON Keeper выдает ссылку, которую надо руками дорабатывать.
Меня смутило, что эта ссылка в браузере открывается без проблем, а в питоне ругается. Я пока в этом не силен, доходило долго.
Но в любом случае за два дня чтения всего подряд "скилл прокачал"
 

Форум IT Специалистов