Почему этот код выводит только мои операторы кроме print? Мне нужно, чтобы цикл по городам и добавить данные ответов API в списки - PullRequest
0 голосов
/ 04 апреля 2019

Мне нужно перебрать мой список городов и добавить данные ответов API в новые списки.Когда я запускаю этот код, он не вытягивает какие-либо данные в мои списки, а выводит только оператор кроме print.

Я пытался использовать цикл for и оператор try, но я получаю исключение как вывод.

создание пустых списков погоды для хранения данных ответов

city_name = []
cloudiness = []
country = []
date = []
humidity = []
lat = []
lng = []
max_temp = []
wind_speed = []

record = 1

цикл по каждому городу в списке городов

for city in cities:
    url = "http://api.openweathermap.org/data/2.5/weather?"
    units = "imperial"
    target_url = f"{url}appid={api_key}&q={city}&units={units}"
    weather_response = requests.get(target_url)

#try statement to append weather lists
    try:
        city_record = weather_response['name']
        print(f'Processing record {record}|{city_record}')

        city_name.append(weather_response['name'])
        cloudiness.append(weather_response['clouds']['all'])
        country.append(weather_response['sys']['country'])
        date.append(weather_response['dt'])
        humidity.append(weather_response['main']['humidity'])
        lat.append(weather_response['coord']['lat'])
        lng.append(weather_response['coord']['lon'])
        max_temp.append(weather_response['main']['temp_max'])
        wind_speed.append(weather_response['wind']['speed'])
        print(target_url)

    except TypeError:
        print('City record not found. Skipping...')

        record += 1

        time.sleep(1.01)

    continue

Я ожидал, что мои списки будут дополнены даннымииз запроса API и распечатайте URL каждого запроса.Я получаю только заявление о том, что запись города не найдена снова и снова ...

...