#python #json
#python #json
Вопрос:
Я не уверен, почему я получаю эту ошибку. Существует decoder.py файл в моей папке python.
import requests
import json
import common
session = requests.Session()
uri = "http://www.missingkids.com"
json_srv_uri = uri "/missingkids/servlet/JSONDataServlet"
search_uri = "?action=publicSearch"
child_detail_uri = "?action=childDetail"
session.get(json_srv_uri search_uri "amp;searchLang=en_USamp;search=newamp;subjToSearch=childamp;missState=CAamp;missCountry=US") #Change missState=All for all states
response = session.get(json_srv_uri search_uri "amp;searchLang=en_USamp;goToPage=1")
dct = json.loads(response.text)
pgs = int(dct["totalPages"])
print("found {} pages".format(pgs))
missing_persons = {}
Комментарии:
1. Ну, этот URL, который вы пытаетесь открыть, равен 404…
2. @Aran-Fey иронично …
Ответ №1:
URL http://www.missingkids.com/missingkids/servlet / возвращает ошибку 404. Таким образом, нет данных JSON для запросов на возврат. Исправление URL-адреса таким образом, чтобы он указывал на действительное место назначения, позволит запросам возвращать содержимое страницы.
Чтобы выполнить поиск пропавшего дочернего элемента, зарегистрированного в базе данных этого веб-сайта, попробуйте этот URL: http://www.missingkids.com/gethelpnow/search
Ответ №2:
После каждого HTTP-вызова вам необходимо проверять код состояния.
Пример
import requests
r = requests.get('my_url')
# status code 'OK' is very popular and its numeric value is 200
# note that there are other status codes as well
if r.status_code == requests.codes.ok:
# do your thing
else:
# we have a problem