рекомендации

среда, 22 апреля 2020 г.

Wego - прогноз погоды в терминале

Оригинал: wego – ASCII weather app for the terminal


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

wego - еще одна жемчужина среди консольных программ. Это программа для получения прогноза погоды, с открытым исходным кодом, написанная на языке программирования Go и предназначенная для терминала. Она отображает погоду различными визуально привлекательными способами. Это легкий способ следить за погодой, не требующий веб-браузера. Информация зашифрована с помощью SSL для передачи на локальный компьютер.

Возможно, вы использовали эту программу, не зная об этом. wttr.in - это веб-интерфейс для wego, доступ к которому можно получить с помощью curl, для предоставления информации о погоде из терминала. Если у вас уже есть curl в вашей системе, устанавливать ничего не надо. Он имеет большое количество опций, Вы можете узнать о них по команде curl wttr.in/:help

Хотя доступ к веб-сервису с помощью curl очень простой, он страдает большим недостатком. Сервис ограничен 1 миллионом запросов в день. Миллион запросов звучит очень круто. Но сервис довольно популярен. И он недоступен, кажется всегда, когда мне нужен прогноз погоды. Так что я все больше и больше использую Wego.

Прежде чем вы сможете использовать wego, вам нужно немного поработать, но на этом сайте объясняется, как это сделать. Единственное, что я могу добавить, это отметить, что если у вас не установлен Go, возможно, проще всего установить Go через snap, но я не фанат snap - это мое личное мнение.

Wego поддерживает гибкую систему плагинов. Он имеет два типа плагинов: Backends (источники данных) и внешние интерфейсы.

wego может использовать три погодных бэкэнда: forecast.io, Openweathermap и Worldweatheronline. Вам необходимо создать учетную запись хотя бы для одного из них. Они дадут вам секретный ключ, который предоставляется для запросов API. Это правда, что они ограничивают количество запросов в день, но это ограничение для вас лично, в отличие от вышеупомянутого веб-сервиса. Бесплатный аккаунт в Dark Sky (Forecast.io) позволяет выполнять 1000 запросов в день, что достаточно для моих нужд.

forecast.io поддерживает только пары широты и долготы в качестве местоположения. На приведенном ниже снимке экрана показан запрос, отправленный в Openweathermap, его серверная часть более гибкая, когда дело касается местоположения.

Давайте посмотрим на возможности программы.

Программа имеет три интерфейса: ascii-art-table, emoji и json. Для пользователя дектопа интерфейс Emoji предлагает особенно привлекательный вывод. Вот пример, показывающий прогноз на текущий день и следующие пару дней для Нью-Йорка.



На приведенном выше снимке экрана к команде wego добавляется с -d 3. Флаг -d (или -days) позволяет установить количество дней, для которого будет отображаться прогноз погоды. На самом деле значение по умолчанию - 3. Вы можете использовать этот флаг для отображения от 1 до 7 дней.

Интерфейс ascii-art предлагает больше информации.



Теперь у нас есть прогноз скорости ветра и его направления, а также количество и вероятность осадков.

Программа настраивается, вы можете переключаться между метрическими и британскими единицами измерения, отображать измеренную температуру и ощущаемую (с учетом коэффициента охлаждения ветром).

Последний интерфейс - JSON. Это JavaScriptObject Notation, облегченный независимый от языка формат обмена данными. Этот формат предназначен для экспорта вывода в другие сервисы и программы. 

Программа имеет поддержку интернационализации через поддерживаемые бэкэнды.

Wego сохраняет настройки в конфигурационный файл ~/ .wegorc. Параметры по умолчанию могут быть переопределены в командной строке.

wego - очень удобная утилита для доступа к информации о погоде из терминала. Если вам нужен быстрый прогноз погоды и вы предпочитаете избегать веб-сервисов, попробуйте ее.

Разработчик: Markus Teich
Лицензия: ISC License – функциональный эквивалент лицензий BSD 2-Clause и MIT.

Комментариев нет:

Отправка комментария