Как из длинной строки извлечь число?
Есть строка
[{'dt': 1608843600, 'main': {'temp': 0.45, 'feels_like': -3.69, 'temp_min': 0.23, 'temp_max': 0.45, 'pressure': 1004, 'sea_level': 1004, 'grnd_level': 1002, 'humidity': 98, 'temp_kf': 0.22}, 'weather': [{'id': 600, 'main': 'Snow', 'description': 'light snow', 'icon': '13n'}], 'clouds': {'all': 95}, 'wind': {'speed': 3.11, 'deg': 170}, 'visibility': 36, 'pop': 1, 'snow': {'3h': 1.29}, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-24 21:00:00'}, {'dt': 1608854400, 'main': {'temp': 0.11, 'feels_like': -3.45, 'temp_min': -0.04, 'temp_max': 0.11, 'pressure': 1004, 'sea_level': 1004, 'grnd_level': 1002, 'humidity': 99, 'temp_kf': 0.15}, 'weather': [{'id': 600, 'main': 'Snow', 'description': 'light snow', 'icon': '13n'}], 'clouds': {'all': 98}, 'wind': {'speed': 2.25, 'deg': 116}, 'visibility': 128, 'pop': 1, 'snow': {'3h': 0.92}, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-25 00:00:00'}, {'dt': 1608865200, 'main': {'temp': -0.18, 'feels_like': -4.32, 'temp_min': -0.24, 'temp_max': -0.18, 'pressure': 1003, 'sea_level': 1003, 'grnd_level': 1001, 'humidity': 98, 'temp_kf': 0.06}, 'weather': [{'id': 600, 'main': 'Snow', 'description': 'light snow', 'icon': '13n'}], 'clouds': {'all': 99}, 'wind': {'speed': 2.98, 'deg': 105}, 'visibility': 1452, 'pop': 0.48, 'snow': {'3h': 0.27}, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-25 03:00:00'}, {'dt': 1608876000, 'main': {'temp': -1.44, 'feels_like': -5.85, 'temp_min': -1.46, 'temp_max': -1.44, 'pressure': 1002, 'sea_level': 1002, 'grnd_level': 1001, 'humidity': 98, 'temp_kf': 0.02}, 'weather': [{'id': 600, 'main': 'Snow', 'description': 'light snow', 'icon': '13n'}], 'clouds': {'all': 100}, 'wind': {'speed': 3.13, 'deg': 72}, 'visibility': 724, 'pop': 0.52, 'snow': {'3h': 0.21}, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-25 06:00:00'}, {'dt': 1608886800, 'main': {'temp': -1.68, 'feels_like': -6.74, 'temp_min': -1.68, 'temp_max': -1.68, 'pressure': 1002, 'sea_level': 1002, 'grnd_level': 1001, 'humidity': 97, 'temp_kf': 0}, 'weather': [{'id': 600, 'main': 'Snow', 'description': 'light snow', 'icon': '13d'}], 'clouds': {'all': 100}, 'wind': {'speed': 3.99, 'deg': 66}, 'visibility': 2154, 'pop': 0.65, 'snow': {'3h': 0.21}, 'sys': {'pod': 'd'}, 'dt_txt': '2020-12-25 09:00:00'}, {'dt': 1608897600, 'main': {'temp': -2.39, 'feels_like': -8.14, 'temp_min': -2.39, 'temp_max': -2.39, 'pressure': 1002, 'sea_level': 1002, 'grnd_level': 1001, 'humidity': 97, 'temp_kf': 0}, 'weather': [{'id': 600, 'main': 'Snow', 'description': 'light snow', 'icon': '13d'}], 'clouds': {'all': 100}, 'wind': {'speed': 4.84, 'deg': 57}, 'visibility': 856, 'pop': 0.48, 'snow': {'3h': 0.28}, 'sys': {'pod': 'd'}, 'dt_txt': '2020-12-25 12:00:00'}, {'dt': 1608908400, 'main': {'temp': -3.12, 'feels_like': -9.3, 'temp_min': -3.12, 'temp_max': -3.12, 'pressure': 1001, 'sea_level': 1001, 'grnd_level': 1000, 'humidity': 97, 'temp_kf': 0}, 'weather': [{'id': 600, 'main': 'Snow', 'description': 'light snow', 'icon': '13n'}], 'clouds': {'all': 100}, 'wind': {'speed': 5.33, 'deg': 52}, 'visibility': 284, 'pop': 0.97, 'snow': {'3h': 0.85}, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-25 15:00:00'}, {'dt': 1608919200, 'main': {'temp': -3.57, 'feels_like': -9.63, 'temp_min': -3.57, 'temp_max': -3.57, 'pressure': 1002, 'sea_level': 1002, 'grnd_level': 1000, 'humidity': 98, 'temp_kf': 0}, 'weather': [{'id': 600, 'main': 'Snow', 'description': 'light snow', 'icon': '13n'}], 'clouds': {'all': 100}, 'wind': {'speed': 5.11, 'deg': 53}, 'visibility': 177, 'pop': 0.97, 'snow': {'3h': 1.22}, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-25 18:00:00'}, {'dt': 1608930000, 'main': {'temp': -4.01, 'feels_like': -10.07, 'temp_min': -4.01, 'temp_max': -4.01, 'pressure': 1002, 'sea_level': 1002, 'grnd_level': 1000, 'humidity': 97, 'temp_kf': 0}, 'weather': [{'id': 600, 'main': 'Snow', 'description': 'light snow', 'icon': '13n'}], 'clouds': {'all': 100}, 'wind': {'speed': 5.02, 'deg': 47}, 'visibility': 205, 'pop': 1, 'snow': {'3h': 1.1}, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-25 21:00:00'}, {'dt': 1608940800, 'main': {'temp': -4.1, 'feels_like': -9.93, 'temp_min': -4.1, 'temp_max': -4.1, 'pressure': 1002, 'sea_level': 1002, 'grnd_level': 1001, 'humidity': 97, 'temp_kf': 0}, 'weather': [{'id': 600, 'main': 'Snow', 'description': 'light snow', 'icon': '13n'}], 'clouds': {'all': 100}, 'wind': {'speed': 4.67, 'deg': 46}, 'visibility': 231, 'pop': 0.97, 'snow': {'3h': 0.99}, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-26 00:00:00'}, {'dt': 1608951600, 'main': {'temp': -4.23, 'feels_like': -9.8, 'temp_min': -4.23, 'temp_max': -4.23, 'pressure': 1002, 'sea_level': 1002, 'grnd_level': 1000, 'humidity': 97, 'temp_kf': 0}, 'weather': [{'id': 600, 'main': 'Snow', 'description': 'light snow', 'icon': '13n'}], 'clouds': {'all': 100}, 'wind': {'speed': 4.29, 'deg': 36}, 'visibility': 353, 'pop': 1, 'snow': {'3h': 0.7}, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-26 03:00:00'}, {'dt': 1608962400, 'main': {'temp': -4.37, 'feels_like': -10.03, 'temp_min': -4.37, 'temp_max': -4.37, 'pressure': 1003, 'sea_level': 1003, 'grnd_level': 1001, 'humidity': 97, 'temp_kf': 0}, 'weather': [{'id': 600, 'main': 'Snow', 'description': 'light snow', 'icon': '13n'}], 'clouds': {'all': 100}, 'wind': {'speed': 4.39, 'deg': 28}, 'visibility': 221, 'pop': 0.95, 'snow': {'3h': 0.66}, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-26 06:00:00'}, {'dt': 1608973200, 'main': {'temp': -4.73, 'feels_like': -10.48, 'temp_min': -4.73, 'temp_max': -4.73, 'pressure': 1004, 'sea_level': 1004, 'grnd_level': 1002, 'humidity': 97, 'temp_kf': 0}, 'weather': [{'id': 600, 'main': 'Snow', 'description': 'light snow', 'icon': '13d'}], 'clouds': {'all': 100}, 'wind': {'speed': 4.46, 'deg': 18}, 'visibility': 191, 'pop': 0.91, 'snow': {'3h': 0.78}, 'sys': {'pod': 'd'}, 'dt_txt': '2020-12-26 09:00:00'}, {'dt': 1608984000, 'main': {'temp': -5.41, 'feels_like': -11.36, 'temp_min': -5.41, 'temp_max': -5.41, 'pressure': 1005, 'sea_level': 1005, 'grnd_level': 1003, 'humidity': 96, 'temp_kf': 0}, 'weather': [{'id': 600, 'main': 'Snow', 'description': 'light snow', 'icon': '13d'}], 'clouds': {'all': 100}, 'wind': {'speed': 4.64, 'deg': 3}, 'visibility': 869, 'pop': 0.91, 'snow': {'3h': 0.7}, 'sys': {'pod': 'd'}, 'dt_txt': '2020-12-26 12:00:00'}, {'dt': 1608994800, 'main': {'temp': -6.4, 'feels_like': -11.89, 'temp_min': -6.4, 'temp_max': -6.4, 'pressure': 1006, 'sea_level': 1006, 'grnd_level': 1004, 'humidity': 96, 'temp_kf': 0}, 'weather': [{'id': 600, 'main': 'Snow', 'description': 'light snow', 'icon': '13n'}], 'clouds': {'all': 100}, 'wind': {'speed': 3.84, 'deg': 358}, 'visibility': 1154, 'pop': 0.72, 'snow': {'3h': 0.37}, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-26 15:00:00'}, {'dt': 1609005600, 'main': {'temp': -7.28, 'feels_like': -12.23, 'temp_min': -7.28, 'temp_max': -7.28, 'pressure': 1008, 'sea_level': 1008, 'grnd_level': 1006, 'humidity': 96, 'temp_kf': 0}, 'weather': [{'id': 804, 'main': 'Clouds', 'description': 'overcast clouds', 'icon': '04n'}], 'clouds': {'all': 96}, 'wind': {'speed': 2.96, 'deg': 345}, 'visibility': 4625, 'pop': 0.62, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-26 18:00:00'}, {'dt': 1609016400, 'main': {'temp': -8.29, 'feels_like': -13, 'temp_min': -8.29, 'temp_max': -8.29, 'pressure': 1009, 'sea_level': 1009, 'grnd_level': 1007, 'humidity': 96, 'temp_kf': 0}, 'weather': [{'id': 804, 'main': 'Clouds', 'description': 'overcast clouds', 'icon': '04n'}], 'clouds': {'all': 88}, 'wind': {'speed': 2.5, 'deg': 329}, 'visibility': 9261, 'pop': 0.07, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-26 21:00:00'}, {'dt': 1609027200, 'main': {'temp': -8.81, 'feels_like': -13.53, 'temp_min': -8.81, 'temp_max': -8.81, 'pressure': 1011, 'sea_level': 1011, 'grnd_level': 1010, 'humidity': 96, 'temp_kf': 0}, 'weather': [{'id': 803, 'main': 'Clouds', 'description': 'broken clouds', 'icon': '04n'}], 'clouds': {'all': 79}, 'wind': {'speed': 2.45, 'deg': 320}, 'visibility': 10000, 'pop': 0, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-27 00:00:00'}, {'dt': 1609038000, 'main': {'temp': -9.84, 'feels_like': -14.02, 'temp_min': -9.84, 'temp_max': -9.84, 'pressure': 1013, 'sea_level': 1013, 'grnd_level': 1011, 'humidity': 96, 'temp_kf': 0}, 'weather': [{'id': 803, 'main': 'Clouds', 'description': 'broken clouds', 'icon': '04n'}], 'clouds': {'all': 60}, 'wind': {'speed': 1.57, 'deg': 328}, 'visibility': 10000, 'pop': 0, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-27 03:00:00'}, {'dt': 1609048800, 'main': {'temp': -10.34, 'feels_like': -13.86, 'temp_min': -10.34, 'temp_max': -10.34, 'pressure': 1015, 'sea_level': 1015, 'grnd_level': 1013, 'humidity': 96, 'temp_kf': 0}, 'weather': [{'id': 803, 'main': 'Clouds', 'description': 'broken clouds', 'icon': '04n'}], 'clouds': {'all': 53}, 'wind': {'speed': 0.57, 'deg': 263}, 'visibility': 10000, 'pop': 0, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-27 06:00:00'}, {'dt': 1609059600, 'main': {'temp': -9.51, 'feels_like': -13.5, 'temp_min': -9.51, 'temp_max': -9.51, 'pressure': 1016, 'sea_level': 1016, 'grnd_level': 1015, 'humidity': 95, 'temp_kf': 0}, 'weather': [{'id': 800, 'main': 'Clear', 'description': 'clear sky', 'icon': '01d'}], 'clouds': {'all': 2}, 'wind': {'speed': 1.32, 'deg': 197}, 'visibility': 10000, 'pop': 0, 'sys': {'pod': 'd'}, 'dt_txt': '2020-12-27 09:00:00'}, {'dt': 1609070400, 'main': {'temp': -9.25, 'feels_like': -13.84, 'temp_min': -9.25, 'temp_max': -9.25, 'pressure': 1018, 'sea_level': 1018, 'grnd_level': 1016, 'humidity': 95, 'temp_kf': 0}, 'weather': [{'id': 800, 'main': 'Clear', 'description': 'clear sky', 'icon': '01d'}], 'clouds': {'all': 4}, 'wind': {'speed': 2.2, 'deg': 160}, 'visibility': 10000, 'pop': 0, 'sys': {'pod': 'd'}, 'dt_txt': '2020-12-27 12:00:00'}, {'dt': 1609081200, 'main': {'temp': -9.83, 'feels_like': -15.14, 'temp_min': -9.83, 'temp_max': -9.83, 'pressure': 1018, 'sea_level': 1018, 'grnd_level': 1017, 'humidity': 95, 'temp_kf': 0}, 'weather': [{'id': 803, 'main': 'Clouds', 'description': 'broken clouds', 'icon': '04n'}], 'clouds': {'all': 81}, 'wind': {'speed': 3.17, 'deg': 147}, 'visibility': 10000, 'pop': 0, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-27 15:00:00'}, {'dt': 1609092000, 'main': {'temp': -8.8, 'feels_like': -14.57, 'temp_min': -8.8, 'temp_max': -8.8, 'pressure': 1019, 'sea_level': 1019, 'grnd_level': 1017, 'humidity': 95, 'temp_kf': 0}, 'weather': [{'id': 804, 'main': 'Clouds', 'description': 'overcast clouds', 'icon': '04n'}], 'clouds': {'all': 91}, 'wind': {'speed': 3.93, 'deg': 152}, 'visibility': 10000, 'pop': 0, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-27 18:00:00'}, {'dt': 1609102800, 'main': {'temp': -8.11, 'feels_like': -13.77, 'temp_min': -8.11, 'temp_max': -8.11, 'pressure': 1020, 'sea_level': 1020, 'grnd_level': 1018, 'humidity': 96, 'temp_kf': 0}, 'weather': [{'id': 804, 'main': 'Clouds', 'description': 'overcast clouds', 'icon': '04n'}], 'clouds': {'all': 100}, 'wind': {'speed': 3.87, 'deg': 152}, 'visibility': 6462, 'pop': 0, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-27 21:00:00'}, {'dt': 1609113600, 'main': {'temp': -7.46, 'feels_like': -13.07, 'temp_min': -7.46, 'temp_max': -7.46, 'pressure': 1020, 'sea_level': 1020, 'grnd_level': 1018, 'humidity': 97, 'temp_kf': 0}, 'weather': [{'id': 804, 'main': 'Clouds', 'description': 'overcast clouds', 'icon': '04n'}], 'clouds': {'all': 100}, 'wind': {'speed': 3.89, 'deg': 143}, 'visibility': 10000, 'pop': 0, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-28 00:00:00'}, {'dt': 1609124400, 'main': {'temp': -6.97, 'feels_like': -12.81, 'temp_min': -6.97, 'temp_max': -6.97, 'pressure': 1020, 'sea_level': 1020, 'grnd_level': 1018, 'humidity': 97, 'temp_kf': 0}, 'weather': [{'id': 804, 'main': 'Clouds', 'description': 'overcast clouds', 'icon': '04n'}], 'clouds': {'all': 100}, 'wind': {'speed': 4.28, 'deg': 148}, 'visibility': 10000, 'pop': 0, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-28 03:00:00'}, {'dt': 1609135200, 'main': {'temp': -6.44, 'feels_like': -12.42, 'temp_min': -6.44, 'temp_max': -6.44, 'pressure': 1019, 'sea_level': 1019, 'grnd_level': 1018, 'humidity': 97, 'temp_kf': 0}, 'weather': [{'id': 804, 'main': 'Clouds', 'description': 'overcast clouds', 'icon': '04n'}], 'clouds': {'all': 100}, 'wind': {'speed': 4.55, 'deg': 143}, 'visibility': 5734, 'pop': 0, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-28 06:00:00'}, {'dt': 1609146000, 'main': {'temp': -6.21, 'feels_like': -12.58, 'temp_min': -6.21, 'temp_max': -6.21, 'pressure': 1019, 'sea_level': 1019, 'grnd_level': 1018, 'humidity': 96, 'temp_kf': 0}, 'weather': [{'id': 804, 'main': 'Clouds', 'description': 'overcast clouds', 'icon': '04d'}], 'clouds': {'all': 100}, 'wind': {'speed': 5.13, 'deg': 136}, 'visibility': 10000, 'pop': 0, 'sys': {'pod': 'd'}, 'dt_txt': '2020-12-28 09:00:00'}, {'dt': 1609156800, 'main': {'temp': -6.3, 'feels_like': -12.42, 'temp_min': -6.3, 'temp_max': -6.3, 'pressure': 1018, 'sea_level': 1018, 'grnd_level': 1016, 'humidity': 95, 'temp_kf': 0}, 'weather': [{'id': 804, 'main': 'Clouds', 'description': 'overcast clouds', 'icon': '04d'}], 'clouds': {'all': 92}, 'wind': {'speed': 4.74, 'deg': 139}, 'visibility': 10000, 'pop': 0, 'sys': {'pod': 'd'}, 'dt_txt': '2020-12-28 12:00:00'}, {'dt': 1609167600, 'main': {'temp': -4.53, 'feels_like': -11.43, 'temp_min': -4.53, 'temp_max': -4.53, 'pressure': 1017, 'sea_level': 1017, 'grnd_level': 1015, 'humidity': 95, 'temp_kf': 0}, 'weather': [{'id': 804, 'main': 'Clouds', 'description': 'overcast clouds', 'icon': '04n'}], 'clouds': {'all': 95}, 'wind': {'speed': 6.1, 'deg': 137}, 'visibility': 10000, 'pop': 0, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-28 15:00:00'}, {'dt': 1609178400, 'main': {'temp': -4.21, 'feels_like': -10.97, 'temp_min': -4.21, 'temp_max': -4.21, 'pressure': 1016, 'sea_level': 1016, 'grnd_level': 1015, 'humidity': 94, 'temp_kf': 0}, 'weather': [{'id': 804, 'main': 'Clouds', 'description': 'overcast clouds', 'icon': '04n'}], 'clouds': {'all': 98}, 'wind': {'speed': 5.93, 'deg': 137}, 'visibility': 10000, 'pop': 0.05, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-28 18:00:00'}, {'dt': 1609189200, 'main': {'temp': -4.65, 'feels_like': -11.33, 'temp_min': -4.65, 'temp_max': -4.65, 'pressure': 1016, 'sea_level': 1016, 'grnd_level': 1014, 'humidity': 94, 'temp_kf': 0}, 'weather': [{'id': 804, 'main': 'Clouds', 'description': 'overcast clouds', 'icon': '04n'}], 'clouds': {'all': 100}, 'wind': {'speed': 5.74, 'deg': 138}, 'visibility': 10000, 'pop': 0, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-28 21:00:00'}, {'dt': 1609200000, 'main': {'temp': -4.28, 'feels_like': -10.95, 'temp_min': -4.28, 'temp_max': -4.28, 'pressure': 1014, 'sea_level': 1014, 'grnd_level': 1013, 'humidity': 94, 'temp_kf': 0}, 'weather': [{'id': 804, 'main': 'Clouds', 'description': 'overcast clouds', 'icon': '04n'}], 'clouds': {'all': 100}, 'wind': {'speed': 5.79, 'deg': 135}, 'visibility': 10000, 'pop': 0.02, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-29 00:00:00'}, {'dt': 1609210800, 'main': {'temp': -3.62, 'feels_like': -10.07, 'temp_min': -3.62, 'temp_max': -3.62, 'pressure': 1013, 'sea_level': 1013, 'grnd_level': 1011, 'humidity': 96, 'temp_kf': 0}, 'weather': [{'id': 804, 'main': 'Clouds', 'description': 'overcast clouds', 'icon': '04n'}], 'clouds': {'all': 100}, 'wind': {'speed': 5.62, 'deg': 132}, 'visibility': 10000, 'pop': 0.44, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-29 03:00:00'}, {'dt': 1609221600, 'main': {'temp': -3.82, 'feels_like': -10.27, 'temp_min': -3.82, 'temp_max': -3.82, 'pressure': 1011, 'sea_level': 1011, 'grnd_level': 1010, 'humidity': 94, 'temp_kf': 0}, 'weather': [{'id': 804, 'main': 'Clouds', 'description': 'overcast clouds', 'icon': '04n'}], 'clouds': {'all': 100}, 'wind': {'speed': 5.54, 'deg': 123}, 'visibility': 10000, 'pop': 0.19, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-29 06:00:00'}, {'dt': 1609232400, 'main': {'temp': -4.15, 'feels_like': -10.47, 'temp_min': -4.15, 'temp_max': -4.15, 'pressure': 1011, 'sea_level': 1011, 'grnd_level': 1009, 'humidity': 94, 'temp_kf': 0}, 'weather': [{'id': 804, 'main': 'Clouds', 'description': 'overcast clouds', 'icon': '04d'}], 'clouds': {'all': 100}, 'wind': {'speed': 5.3, 'deg': 122}, 'visibility': 10000, 'pop': 0, 'sys': {'pod': 'd'}, 'dt_txt': '2020-12-29 09:00:00'}, {'dt': 1609243200, 'main': {'temp': -4.37, 'feels_like': -10.78, 'temp_min': -4.37, 'temp_max': -4.37, 'pressure': 1008, 'sea_level': 1008, 'grnd_level': 1007, 'humidity': 95, 'temp_kf': 0}, 'weather': [{'id': 804, 'main': 'Clouds', 'description': 'overcast clouds', 'icon': '04d'}], 'clouds': {'all': 100}, 'wind': {'speed': 5.42, 'deg': 113}, 'visibility': 10000, 'pop': 0, 'sys': {'pod': 'd'}, 'dt_txt': '2020-12-29 12:00:00'}, {'dt': 1609254000, 'main': {'temp': -5.02, 'feels_like': -11.78, 'temp_min': -5.02, 'temp_max': -5.02, 'pressure': 1007, 'sea_level': 1007, 'grnd_level': 1005, 'humidity': 96, 'temp_kf': 0}, 'weather': [{'id': 804, 'main': 'Clouds', 'description': 'overcast clouds', 'icon': '04n'}], 'clouds': {'all': 100}, 'wind': {'speed': 5.85, 'deg': 112}, 'visibility': 7698, 'pop': 0.06, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-29 15:00:00'}, {'dt': 1609264800, 'main': {'temp': -5.23, 'feels_like': -11.93, 'temp_min': -5.23, 'temp_max': -5.23, 'pressure': 1005, 'sea_level': 1005, 'grnd_level': 1004, 'humidity': 95, 'temp_kf': 0}, 'weather': [{'id': 804, 'main': 'Clouds', 'description': 'overcast clouds', 'icon': '04n'}], 'clouds': {'all': 100}, 'wind': {'speed': 5.71, 'deg': 112}, 'visibility': 8096, 'pop': 0.04, 'sys': {'pod': 'n'}, 'dt_txt': '2020-12-29 18:00:00'}]
Код
import requests, json
import re
import RPi.GPIO as GPIO
url = "http://api.openweathermap.org/data/2.5/forecast"
payload = {
"lat": "59.939095",
"lon": "30.315868",
"units": "metric",
"appid": "41a9e773db15ad620942e1d677daf357",
}
res = requests.get(url, params=payload)
data = json.loads(res.text)
list_ = data
weather = data["list"]
data1 = res.json()
def pars_weather(weatherType, timeRange, measurementUnits):
if (weatherType in weather) and (
timeRange in weather[weatherType].keys()
):
print(
weatherType,
": ",
weather[weatherType][timeRange],
measurementUnits,
)
else:
print(weatherType, ": ", "none")
pars_weather("clouds", "all", "%")
pars_weather("rain", "3h", "mm")
pars_weather("snow", "3h", "mm")
print("temp:", weather, "C")
Это данные из веб сервиса в виде json. Из нее нужно узнать первый temp который 0.45 как это сделать? Это всё на raspberry.
Ответы (2 шт):
Автор решения: Danis
→ Ссылка
Думаю примерно так:
res = list_[0]["main"]["temp"]
list_ это переменная где это все лежит
Если надо получить значение temp каждого элемента списка, то так:
for el in list_:
print(el["main"]["temp"])
в вашем случае это должно выглядеть так:
print("temp:", weather[0]["main"]["temp"], "C")
Автор решения: MaxU
→ Ссылка
import yaml
import dpath.util as dpu
data = yaml.safe_load(data_str)
res = dpu.values(data, "/**/temp")[0]
print(res)
Вывод:
0.45
PS часто люди задающие вопросы на SO и приводящие в качестве примера данные не уточняют, что данные были получены от WEB сервиса, возвращающего JSON строку подобным образом:
import requests
url = "https://..."
r = requests.get(url)
data_str = r.text
если это и ваш случай тоже, то можно воспользоваться:
data = r.json()
и в итоге стразу получить словарь вместо строки.