myDC.ru

Здравствуйте, гость ( Вход | Регистрация )

 
 
Ответить в данную темуНачать новую тему

> Погода для нескольких городов, API1, API2 | Скрипт погоды для нескольких городов

Рейтинг 5 V
Damaks
сообщение 3.2.2011, 18:42
Сообщение #1


Освоившийся участник
*****

Группа: Пользователи
Сообщений: 255
Регистрация: 1.6.2010
Пользователь №: 6 968
Спасибо сказали: 68 раз




Погода для нескольких городов.


Название: multi_weather_api2
Версия API: API1, API2
Автор: Damaks

Основывается на скрипте Weather_API2.

- добавил возможность просматривать погоду по нескольким городам на выбор из меню
- в отличие от выложенной там глючной версии для нескольких городов, здесь алгоритм обработки общий, т.е. его не нужно копировать для каждого города
- сохранён, но изменён, счётчик, не позволяющий запрашивать погоду слишком часто
- добавлен укороченный вариант конвертации кодировки utf-8 в ansi (вырезан ненужный обратный перевод)
- просматривать погоду могут только зарегистрированные юзеры, иначе выводится соответствующее сообщение
- добавлять и изменять наличие городов можно всего одной строчкой, которая по совместительству является и строкой меню для каждого города
- по умолчанию убрано название города перед каждой строкой (строка мне показалась слишком длинной)
- изменёно оформление вывода прогноза погоды

Цитата( будет выглядеть примерно так )
============================================================================================
Прогноз погоды
============================================================================================

Вечер 03 Feb, Thu Пасмурно, температура -1..1 С, давление 742..744 мм рт.ст., ветер Юго-Западный, 4 м/с
Ночь 04 Feb, Fri Облачно, температура -2..-4 С, давление 741..743 мм рт.ст., ветер Южный, 4 м/с
Утро 04 Feb, Fri Пасмурно, температура 0..-2 С, давление 738..740 мм рт.ст., ветер Южный, 5 м/с
День 04 Feb, Fri Пасмурно, температура 1..3 С, давление 737..739 мм рт.ст., ветер Юго-Западный, 5 м/с

============================================================================================

Для работы скрипта необходимы библиотеки Luasocket.
Коды городов можно найти здесь: Прикрепленный файл  multi_weather_codes.txt ( 69.89 килобайт ) Кол-во скачиваний: 178

Подробнее работу скрипта можете проверить у меня на хабе.
Версию скрипта для API1 необходимо использовать в паре с old_api.lu (уже находится в архиве, также копируется в папку "scripts").


Скачать:

Прикрепленный файл  multi_weather_api2.lua ( 6.84 килобайт ) Кол-во скачиваний: 225

Прикрепленный файл  multi_weather_api1.zip ( 8.99 килобайт ) Кол-во скачиваний: 42


P.S.
Необходима помощь знатоков. В отличие от оригинала скрипт отправляет запрос при каждом просмотре. Это было сделано для исключения "артефактов", двойных запросов или накапливающихся. Если кто-то добавит кэширование, буду очень признателен.
Go to the top of the page
+Quote Post
Артём
сообщение 4.3.2011, 20:59
Сообщение #2


Местный похерист
**********

Группа: Пользователи
Сообщений: 2 242
Регистрация: 11.10.2008
Из: Харькова
Пользователь №: 771
Спасибо сказали: 592 раза




+ Добавлена возможность опционального просмотра погоды по ЛЮБОМУ городу, который есть в базе "optional_Weather_script_city_codes.txt"
(скрипт и базу распаковать в папку scripts)
Добавил: alex82
[attachment=5867:optional...ript.lua.rar]


Спасибо сказали:
Go to the top of the page
+Quote Post
STIVAN
сообщение 4.4.2011, 15:26
Сообщение #3


Активный участник
***

Группа: Пользователи
Сообщений: 52
Регистрация: 30.6.2010
Из: Волгоград
Пользователь №: 7 181
Спасибо сказали: 1 раз




Артём, у меня что то пишет: Прогноз погоды в данный момент недоступен. Попробуйте позже. г. Волгоград
Go to the top of the page
+Quote Post
Артём
сообщение 4.4.2011, 15:57
Сообщение #4


Местный похерист
**********

Группа: Пользователи
Сообщений: 2 242
Регистрация: 11.10.2008
Из: Харькова
Пользователь №: 771
Спасибо сказали: 592 раза




STIVAN, а у меня показывает нормально big_smile.gif
г. Волгоград
Прикрепленный файл  89898.JPG ( 39.5 килобайт ) Кол-во скачиваний: 456


Спасибо сказали:
Go to the top of the page
+Quote Post
STIVAN
сообщение 4.4.2011, 16:16
Сообщение #5


Активный участник
***

Группа: Пользователи
Сообщений: 52
Регистрация: 30.6.2010
Из: Волгоград
Пользователь №: 7 181
Спасибо сказали: 1 раз




Артём, все заработало, наверно обновлялось
Go to the top of the page
+Quote Post
abcdg
сообщение 2.7.2011, 12:09
Сообщение #6


Абсолютный новичок


Группа: Пользователи
Сообщений: 3
Регистрация: 17.9.2010
Пользователь №: 7 710
Спасибо сказали: 0 раз




спасибо. всё работает
Go to the top of the page
+Quote Post
Parad0x
сообщение 20.11.2011, 19:13
Сообщение #7


Участник
**

Группа: Пользователи
Сообщений: 35
Регистрация: 17.1.2009
Из: Свердловская область
Пользователь №: 1 836
Спасибо сказали: 3 раза




Я так понимаю этот скрипт автоматически погоду в чат выводить не умеет, сравнив этот и скрипт-предшественник простыми манипуляциями функию таймера от туда не добавить (т.к. не очень силен в lua) умельцы помогите big_smile.gif
Go to the top of the page
+Quote Post
Артём
сообщение 1.5.2012, 11:49
Сообщение #8


Местный похерист
**********

Группа: Пользователи
Сообщений: 2 242
Регистрация: 11.10.2008
Из: Харькова
Пользователь №: 771
Спасибо сказали: 592 раза




Parad0x, этот умеет. big_smile.gif
Прикрепленный файл  optional_Weather_script_city_timer.rar ( 35.06 килобайт ) Кол-во скачиваний: 3

каждые 60 минут сообщает всем в чат(время и город можно сменить)...
Прикрепленный файл  1may.JPG ( 40.9 килобайт ) Кол-во скачиваний: 96
Go to the top of the page
+Quote Post
bonch
сообщение 8.5.2012, 17:14
Сообщение #9


Начинающий
*

Группа: Пользователи
Сообщений: 20
Регистрация: 7.11.2008
Пользователь №: 1 019
Спасибо сказали: 0 раз




Здравствуйте.
Что сделать, чтобы инфа шла в личку, а не в чат?
Go to the top of the page
+Quote Post
Артём
сообщение 8.5.2012, 18:42
Сообщение #10


Местный похерист
**********

Группа: Пользователи
Сообщений: 2 242
Регистрация: 11.10.2008
Из: Харькова
Пользователь №: 771
Спасибо сказали: 592 раза




bonch, Сделать Core.SendPmToNick
Go to the top of the page
+Quote Post
FIGO
сообщение 13.5.2012, 1:17
Сообщение #11


Абсолютный новичок


Группа: Пользователи
Сообщений: 5
Регистрация: 2.1.2010
Пользователь №: 5 546
Спасибо сказали: 0 раз




Артём
этот скрипт не пошел у меня

Синтаксис ...C Hub\scripts\optional_Weather_script_city_timer.lua:9: attempt to index global 'SetMan' (a nil value)
Go to the top of the page
+Quote Post
Ksan
сообщение 13.5.2012, 4:13
Сообщение #12


Белый Волк
*********

Группа: Пользователи
Сообщений: 1 413
Регистрация: 11.9.2008
Из: г.Томск
Пользователь №: 516
Спасибо сказали: 445 раз




FIGO, специально сейчас скачал скрипт, поставил, ничего не изменяя, запустился нормально. Тыкнул в меню на Харьков - показал погоду на Харьков. Что я не так делал? big_smile.gif
Хотя кое-что я изменил, но об этом ниже (ещё ниже, в послании Артёму) и оно не касается твоей проблемы.

Я полагаю, что у тебя в 9-й строке в середине выражения вместо точки стоит запятая:
Код
local sBot = SetMan.GetString(21)         -- Имя бота
Исправь на точку и запусти, если больше ничего не менял, будет работать, думаю.

PS: Артём, у тебя в архиве текстовый файл имеет сдвоенное расширение - ".txt.txt", надо бы подправить, а то при первом включении говорит, что не нашёлся файл. И правильно говорит, я не глянул и запустил, и получил эту ошибку.


Спасибо сказали:
Go to the top of the page
+Quote Post
FIGO
сообщение 13.5.2012, 10:53
Сообщение #13


Абсолютный новичок


Группа: Пользователи
Сообщений: 5
Регистрация: 2.1.2010
Пользователь №: 5 546
Спасибо сказали: 0 раз




Ksan
Код
local sBot = SetMan.GetString(21)         -- Имя бота

стоит именно точка, в скрипте ничего не менял

http://mydc.ru/topic2222.html - этот скрипт нормально работает
Go to the top of the page
+Quote Post
Alexey
сообщение 13.5.2012, 13:18
Сообщение #14


6 квадратиков
******

Группа: Модераторы
Сообщений: 526
Регистрация: 21.1.2009
Пользователь №: 1 895
Спасибо сказали: 137 раз




Ты пытаешься включить скрипт на незапущенном хабе.
Go to the top of the page
+Quote Post
Артём
сообщение 13.5.2012, 15:42
Сообщение #15


Местный похерист
**********

Группа: Пользователи
Сообщений: 2 242
Регистрация: 11.10.2008
Из: Харькова
Пользователь №: 771
Спасибо сказали: 592 раза




Ksan, переименовал txt и перезалил.
Цитата
Я полагаю, что у тебя в 9-й строке в середине выражения вместо точки стоит запятая:

Имя бота у меня нормально, без ошибок.
Go to the top of the page
+Quote Post

Ответить в данную темуНачать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

Collapse

> Похожие темы

  Тема Ответов Автор Просмотров Последнее сообщение
No New Posts От: Погода для нескольких городов
От темы с ID: 4644
0 ustas 37 20.11.2011, 20:04 Посл. сообщение: ustas
No New Posts От: Погода для нескольких городов
От темы с ID: 4644
2 ProGeTTo 651 4.2.2011, 8:33 Посл. сообщение: ProGeTTo
No new Topic has attachmentsВремя Стран.(Городов)
Каждые 6 или 3 часов выводило время в чат несколько стран например.
19 Тёмич 3 871 5.9.2010, 1:45 Посл. сообщение: OLGA
No New Posts Новости, Погода, Спорт, Авто и тд.
Информация с сайта rbc.ru
3 DrakonSP 1 351 12.3.2010, 22:12 Посл. сообщение: X-Sky
Closed Погода
скрипт погоды
2 250580 1 091 25.8.2009, 0:46 Посл. сообщение: Setuper
Closed Topic has attachmentsПогода
API 2
4 Strannik 1 442 23.7.2009, 23:01 Посл. сообщение: Strannik
Closed Погода
Погода в топике хаба
2 Goblin 1 456 17.2.2009, 21:18 Посл. сообщение: Setuper
Closed Topic has attachmentsПогода
помнять город
1 _LorD_ 1 086 20.1.2009, 17:31 Посл. сообщение: Wariner

 



RSS Сейчас: 24.5.2012, 2:53