Пользователь вводит город любой страны и получает информацию о том, какая там погода, дата и время


AleksejVer: Какой язык (python?) и на основе чего предоставлять информацию? API какого-то сервиса (какого?) или сделать просто словарь с 10-ю городами?
Аноним: Написано город любой страны, скорее всего он имел введу использование API
AleksejVer: Тогда и конкретный API должны были предоставить. Искать что ли бесплатный, да ещё регистрироваться там и получать ключ? И ещё обрабатывать случаи, когда сервис не знает города, посылая ему ближайший (тут нужен второй сервис с координатами городов). А ещё транслитерацию нужно делать (большинство сервисов не жуют кириллицу). Т.ч. либо конкретный сервис и оговоренные условности, либо ну нафиг.

Ответы

Ответ дал: Аноним
1

Відповідь:

Внизу наведен скрипт который получает информацию о погоде и времени с поисковика Gооgle. ВНИМАНИЕ! Знания не пропускает слово Gооgle, поэтому замените "оо" в словах и ссылках на английские "oo".

import requests

from bs4 import BeautifulSoup  # pip install beautifulsoup4

# User-Agent

UA = (

   'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:111.0) '

   'Gecko/20100101 Firefox/111.0'

)

# Запрашиваем данные у пользователя

city = input('Введите город: ').capitalize()

# ============= Получаем данные о погоде =============

# Формируем URL

url = f'https://www.gооgle.com/search?q=Погода+{city}'

# Делаем GET запрос

response = requests.get(url, headers={'User-Agent': UA})

soup = BeautifulSoup(response.content, 'html.parser')

# Температура

temp = soup.find('span', class_='wob_t q8U8x')

temp = temp.get_text() if temp else 'Ошибка!'

# Описание погоды

desc = soup.find('div', class_='wob_dcp')

desc = desc.get_text() if desc else 'Ошибка!'

# ============= Получаем данные о времени =============

# Формируем URL

url = f'https://www.gооgle.com/search?q=Время+{city}'

# Делаем GET запрос

response = requests.get(url, headers={'User-Agent': UA})

soup = BeautifulSoup(response.content, 'html.parser')

# Время

time = soup.find('div', class_='gsrt vk_bk FzvWSb YwPhnf')

time = time.get_text() if time else 'Ошибка!'

# Выводим результат

print('==============================')

print(f'Погода в городе {city} - {desc}, {temp}℃')

print(f'Время в городе {city} - {time}')

Пояснення:

Если у вас не работает код, установите зависимости:

1. Откройте окно "Запустить" сочетанием клавиш Win+R и введите слово "cmd"

2. В открывшимся окне введите "pip install beautifulsoup4"

Внимание у вас должен быть установлен Python 3 и внесен в PATH!

Приложения:
Вас заинтересует