eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Решение вопросов при работе с TCL скриптами.

Модератор: Модераторы

eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Сообщение tvrsh » 08 авг 2010 00:35

###
#
# Название: eweather.tcl
# Версия: 3.0
# Автор: tvrsh
# Оффсайт: http://egghelp.ru/
#
###
#
# Описание: Скрипт "не простой" погоды с Яндекса. Теперь работает с базой(12000+) городов.
# В скрипте есть запоминалка последнего посмотренного города при просмотре сегодняшней погоды. То-есть будет показываться погода
# при команде без параметров. Как только вы посмотрите погоду на любой другой день кроме сегодняшнего, то запоминалка для вас
# сбрасывается. Объяснить трудно но оно работает.
#
###
#
# Версион хистори:
#
# 1.0(20.03.2010) Первая паблик версия.
# 1.1(21.03.2010) + небольшой хелп по использованию
# + погода в случайном городе
# + небольшие изменения скрипта
# 2.0(24.07.2010) Собрана база городов и скрипт переписан для работы с ней.
# 2.1(26.07.2010) Запоминалка последнего города и показ погоды в нем при команде без параметров.
# 2.2(12.08.2010) Погода на неделю если перед городом поставить +.
# 2.3(12.08.2010) Исправлена ошибка с минусовой температурой на ботах с сузи.
# 2.4(28.09.2010) Исправлена ошибка поиска "многословных" городов.
# 19.11.2010 +сортировка найденных городов по алфавиту.
# 2.5(17.12.2010) Переписан скрипт и база под новый формат запросов сайта.
# + раскраска температуры (с) #eggdrop @ RusNet.
# + много обновлений в оформлении.
# 2.6(25.06.2011) Обновлена база городов.
# + небольшие поправки в недельном и дневном выводах.
# 2.7(29.11.2011) Добавлено локальное время, время и место обновления данных о погоде.
# + обновлен вывод в канал всвязи с увеличением размера сообщения.
# + короткие алиасы городов.
# 2.8(19.02.2012) Скрипт обновлен после изменений на сайте.
# 2.9(06.03.2012) Добавлен показа восхода/захода.
# 3.0(09.06.2013) Обновил вывод и добавил показ вчерашней температуры.
#
###


Пример работы:
# Просто просмотр погоды.
<tvrsh> !п подольск
<@bionic> Пoдoльcк: -9 °C, яcнo. Вocхoд: 07:48/19:16, Дaвлeниe: 758 мм.pт.cт, Вeтep: югo-вocтoчный, 4.0 м/c (14.4 км/ч), Влaжнocть: 58%, Вeчepoм: -14 °C, Hoчью: -18 °C. (138.394мc.)

# Поиск города в базе и показ первого из списка найденных.
<tvrsh> !п под*
<@bionic> По вашему запросу "под" найдено 16 городов. Первые 5 найденных: Подбуж, Подволочиск, Подгайцы, Подгоренский, Подгорица (Черногория).
<@bionic> Пoдбyж: +1 °C, яcнo. Вocхoд: 07:48/19:16, Дaвлeниe: 729 мм.pт.cт, Вeтep: Штиль, Влaжнocть: 74%, Вeчepoм: +2 °C, Hoчью: +1 °C. (137.545мc.)

# Просмотр погоды в городе из списка найденных.
<tvrsh> !п под* -3
<@bionic> По вашему запросу "под" найдено 16 городов. Первые 5 найденных: Подбуж, Подволочиск, Подгайцы, Подгоренский, Подгорица (Черногория).
<@bionic> Пoдoльcк: -9 °C, яcнo. Вocхoд: 07:48/19:16, Дaвлeниe: 758 мм.pт.cт, Вeтep: югo-вocтoчный, 4.0 м/c (14.4 км/ч), Влaжнocть: 58%, Вeчepoм: -14 °C, Hoчью: -18 °C. (123.724мc.)

# Срабатывает запоминалка последнего города, которая сбросится при просмотре погода на следующие дни.
<tvrsh> !п
<@bionic> Пoдoльcк: -9 °C, яcнo. Вocхoд: 07:48/19:16, Дaвлeниe: 758 мм.pт.cт, Вeтep: югo-вocтoчный, 4.0 м/c (14.4 км/ч), Влaжнocть: 58%, Вeчepoм: -14 °C, Hoчью: -18 °C. (150.791мc.)

# Просмотр погоды на неделю.
<@tvrsh> !пп +подольск
<@bionic> Пoдoльcк: зaвтpa 20 фeвpaля: oблaчнo c пpoяcнeниями -10/-10. вт 21: oблaчнo -2/-6. cp 22: oблaчнo -3/-6. чт 23: oблaчнo, вpeмeнaми cнeг -1/-2. пт 24: oблaчнo, нeбoльшoй дoждь co cнeгoм 0/-1. cб 25: oблaчнo, нeбoльшoй cнeг 0/-3. вc 26: oблaчнo, нeбoльшoй cнeг -1/-6. (171.096мc.)


Также показывается время выполнения запроса. Кому не нравится, то легко убрать.
Инструкция по установке в шапке скрипта.

Скачать скрипт: eweather2.tcl
Скачать базу городов: ewbase.txt
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Сообщение tvrsh » 19 ноя 2010 11:15

Очередное обновление. Теперь списки найденных городов сортируются по алфавиту.
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Сообщение Волк » 25 ноя 2010 01:49

Однако глюк с городами из двух слов все равно жив
<Волк> !п нижний новгород
<Lupus> Нижегородская область, Нижний Новгород сейчас: +2 °C, Слабый дождь со снегом, Ветер: юго-восточный, 6 м/с (22 км/ч), Давление: 732 мм рт. ст., Влажность: 93%, Восход: 08:01, Заход: 15:40. (223.848мc.)
<Волк> о.о
<Волк> !п нижний новгород +1
<Lupus> По вашему запросу "нижний" найдено 3 города: Нижний Ломов (Россия), Нижний Новгород (Россия), Нижний Тагил (Россия).
<Lupus> В пт 26 в Пензенская область, Нижний Ломов будет переменная облачность. Температура днем +1 и ночью -3. (313.78мc.)
<Волк> !п +нижний новгород
<Lupus> Погода на неделю в Нижегородская область, Нижний Новгород: сегодня 25 ноября: облачно, небольшой снег +1/-1. пт 26: облачно, небольшой снег 0/-2. сб 27: облачно, небольшой снег ?1/-8. вс 28: облачно, небольшой снег ?2/-10. пн 29 ноября: облачно ?10/-16. вт 30: снег ?4/-8. ср 1 декабря: облачно, небольшой снег ?2/-16. (321.64мc.)
<Волк> !п +1 нижний новгород
<Волк> !п +1нижний новгород
Аватара пользователя
Волк
 
Сообщения: 27
Зарегистрирован: 25 ноя 2010 01:47
Благодарил (а): 3 раз.
Поблагодарили: 1 раз.
Версия бота: Eggdrop 1.6.21+suzi

Re: eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Сообщение tvrsh » 28 ноя 2010 16:51

Уверен что у тебя последняя версия? На сколько я помню, я исправлял проблему многословных городов: viewtopic.php?p=1057#p1057
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Сообщение Волк » 28 ноя 2010 18:35

Да, последняя
<Волк> !пп нижний новгород +1
<Lupus> По вашему запросу "нижний" найдено 3 города: Нижний Ломов (Россия), Нижний Новгород (Россия), Нижний Тагил (Россия).
<Lupus> В пн 29 ноября в Пензенская область, Нижний Ломов будет переменная облачность. Температура днем ?5 и ночью -6. (568.099мc.)
<Волк> !пп +нижний новгород
<Lupus> Погода на неделю в Нижегородская область, Нижний Новгород: сегодня 28 ноября: переменная облачность, небольшой снег ?1/-13. пн 29 ноября: переменная облачность ?13/-16. вт 30: облачно, небольшой снег ?13/-16. ср 1 декабря: облачно ?16/-20. чт 2: ясно ?15/-18. пт 3: снег ?8/-8. сб 4: осадки ?1/0. (451.72мc.)
<Волк> !пп нижний новгород +2
<Lupus> По вашему запросу "нижний" найдено 3 города: Нижний Ломов (Россия), Нижний Новгород (Россия), Нижний Тагил (Россия).
<Lupus> В вт 30 в Пензенская область, Нижний Ломов будет снег. Температура днем ?1 и ночью -12. (377.021мc.)
Аватара пользователя
Волк
 
Сообщения: 27
Зарегистрирован: 25 ноя 2010 01:47
Благодарил (а): 3 раз.
Поблагодарили: 1 раз.
Версия бота: Eggdrop 1.6.21+suzi

Re: eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Сообщение UltraDark » 29 ноя 2010 11:23

Отказывается показывать погоду :( Может конечно что-то и не так сделал, но вроде все правильно. Поиск городов в базе работает.

В патилайне это:
[10:10] Tcl error [::eweather::eweather_pub]: invalid command name "::http::config"

И такая еще ошибка, при попытке открыть по номеру города из найденого:
[10:20] Tcl error [::eweather::eweather_pub]: can't read "citys": no such variable


Подскажите что не так.
UltraDark
 
Сообщения: 3
Зарегистрирован: 29 ноя 2010 11:13
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Сообщение tvrsh » 29 ноя 2010 15:51

UltraDark писал(а):Отказывается показывать погоду :( Может конечно что-то и не так сделал, но вроде все правильно. Поиск городов в базе работает.

В патилайне это:
[10:10] Tcl error [::eweather::eweather_pub]: invalid command name "::http::config"

И такая еще ошибка, при попытке открыть по номеру города из найденого:
[10:20] Tcl error [::eweather::eweather_pub]: can't read "citys": no such variable


Подскажите что не так.

Решение твоей проблемы тут: viewtopic.php?p=1232#p1232
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Сообщение tvrsh » 29 ноя 2010 16:05

Волк, поправил.
<@tvrsh> !пп нижний новгород +1
<%quiz> В вт 30 в Нижегородская область, Нижний Новгород будет облачно, небольшой снег. Температура днем -13 и ночью -16. (463.707мc.)
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Сообщение UltraDark » 29 ноя 2010 16:55

tvrsh, спасибо, но с этим вроде сам разобрался, убрал двойку из названия и начал показывать. Только вот в таком виде:
[17:32:25] <Ultrafiolet> !п Барнаул
[17:32:27] <gluchik> ????????? ????, ??????? сейчас: +2 °C, <div class="b-gale" title="??????? ?????">, ?????, ?????: ???-????????, 10 ?/? (36 ??/?), ????????: 733 ?? ??. ??., ?????????: 93%, ??????: 08:15, ?????: 16:13. (655.152мc.)

Как решить подскажи, тему с гороскопом читал, его(гороскоп выводит точно так же - вопросиками(
UltraDark
 
Сообщения: 3
Зарегистрирован: 29 ноя 2010 11:13
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Сообщение tvrsh » 29 ноя 2010 17:07

UltraDark, не надо никакие двойки убирать. Нужно открыть первый пост этой темы и скачать оттуда скрипт.
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Сообщение UltraDark » 29 ноя 2010 17:17

Скачал, поставил, рехаш и опять вопросики.
[19:15:37] <UltraDark> !п барнаул
[19:15:39] <kluchik> ????????? ????, ??????? сейчас: +2 °C, ??????? ? ????????????, ?????: ???-????????, 7 ?/? (25 ??/?), ????????: 732 ?? ??. ??., ?????????: 93%, ??????: 08:15, ?????: 16:13. (805.88мc.)
UltraDark
 
Сообщения: 3
Зарегистрирован: 29 ноя 2010 11:13
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Сообщение Волк » 29 ноя 2010 23:45

Тенкс, теперь все фурычит :)
Кстати немного поудобней было бы при вводе города вне списка выдавать уведомление о ненайденном.
Аватара пользователя
Волк
 
Сообщения: 27
Зарегистрирован: 25 ноя 2010 01:47
Благодарил (а): 3 раз.
Поблагодарили: 1 раз.
Версия бота: Eggdrop 1.6.21+suzi

Re: eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Сообщение tvrsh » 30 ноя 2010 14:52

Волк, все это конечно сделано было но из-за предыдущих изменений немного поломалось. Обновленный скрипт по ссылке в первом посте.
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Сообщение Волк » 05 дек 2010 13:33

Одиночные вопросы все же хаотически выскакивают ..
<Волк> !п москва
<Lupus> Москва сейчас: -9 °C, Ясно, Ветер: западно-юго-западный, 3 м/с (11 км/ч), Давление: 745 мм рт. ст., Влажность: 85%, Восход: 08:41, Заход: 15:59. (227.858мc.)
<Волк> !п +москва
<Lupus> Погода на неделю в Москва: сегодня 5 декабря: переменная облачность ?8/-14. пн 6 декабря: переменная облачность ?8/-9. вт 7: переменная облачность, небольшой снег ?3/-7. ср 8: переменная облачность ?6/-7. чт 9: облачно, небольшой снег ?5/-10. пт 10: снег ?8/-10. сб 11: снег ?1/-6. (251.297мc.)
<Волк> !п москва +1
<Lupus> В пн 6 декабря в Москва будет переменная облачность. Температура днем ?8 и ночью -9. (247.484мc.)
<Волк> !п магадан
<Lupus> Магаданская область, Магадан сейчас: -3, вода ?2 °C, Снег, Ветер: северный, 1 м/с (4 км/ч), Давление: 731 мм рт. ст., Влажность: 93%, Восход: 09:35, Заход: 16:00. (311.812мc.)
<Волк> !п +магадан
<Lupus> Погода на неделю в Магаданская область, Магадан: сегодня 5 декабря: метель ?3/-3. пн 6 декабря: снег 0/-2. вт 7: переменная облачность, небольшой снег ?2/-6. ср 8: осадки ?1/-1. чт 9: облачно, небольшие осадки +1/0. пт 10: метель +1/-8. сб 11: снег ?4/-6. (243.894мc.)
Аватара пользователя
Волк
 
Сообщения: 27
Зарегистрирован: 25 ноя 2010 01:47
Благодарил (а): 3 раз.
Поблагодарили: 1 раз.
Версия бота: Eggdrop 1.6.21+suzi

Re: eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Сообщение tvrsh » 05 дек 2010 19:18

Волк, эта ошибка уже исправлена. Вместо знака - на сузи ботах появляется ?. Скачай скрипт по ссылке из первого поста.
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Сообщение Волк » 05 дек 2010 19:46

Окей, спасибо!
Аватара пользователя
Волк
 
Сообщения: 27
Зарегистрирован: 25 ноя 2010 01:47
Благодарил (а): 3 раз.
Поблагодарили: 1 раз.
Версия бота: Eggdrop 1.6.21+suzi

Re: eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Сообщение CyibX » 14 дек 2010 18:16

не подскажете в чем проблема,пишу !пп Херсон, а в патлайне такая ошыбка
<ChertuJIo> [16:10:32] [eweather] Skarabei_/#eleventh_class
<ChertuJIo> [16:10:33] Tcl error [::eweather::eweather_pub]: can't read "wcity": no such variable


Уже понял в чем проблема...
Последний раз редактировалось CyibX 14 дек 2010 20:46, всего редактировалось 1 раз.
Аватара пользователя
CyibX
 
Сообщения: 7
Зарегистрирован: 30 окт 2010 14:42
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.18+suzi

Re: eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Сообщение LuXe » 14 дек 2010 20:01

[18:55:30] [eweather] LuXe/#экстрим
[18:55:33] Tcl error [::eweather::eweather_pub]: can't read "wcity": no such variable
.set errorInfo
[18:57:08] #LuXe# set errorInfo
Currently: can't read "wcity": no such variable
Currently: while executing
Currently: "regsub -all -- "\n|\t| " $wcity "" wcity"
Currently: (procedure "::eweather::eweather_parce" line 19)
Currently: invoked from within
Currently: "::eweather::eweather_parce $nick $uhost $hand $chan $query"
Currently: (procedure "::eweather::eweather_proc" line 116)
Currently: invoked from within
Currently: "::eweather::eweather_proc $nick $uhost $hand $chan $text"
Currently: (procedure "::eweather::eweather_pub" line 8)
Currently: invoked from within
Currently: "::eweather::eweather_pub $_pub1 $_pub2 $_pub3 $_pub4 $_pub5"
Как исправить чтоб все работало?
LuXe
 
Сообщения: 38
Зарегистрирован: 18 ноя 2010 17:43
Благодарил (а): 8 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.21+suzi

Re: eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Сообщение tvrsh » 14 дек 2010 20:59

Изменилась ссылка в яндексе. Теперь при запросе погоды передается не числовой индекс города а его название в транслите. Сейчас попробую исправить.

Добавлено спустя 5 минут 49 секунд:
Сейчас собираю новую базу городов, как только она будет готова выложу в архиве.
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Сообщение LuXe » 14 дек 2010 22:50

сколько примерно займёт это по времени?
LuXe
 
Сообщения: 38
Зарегистрирован: 18 ноя 2010 17:43
Благодарил (а): 8 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.21+suzi

Re: eweather2.tcl - Easy weather 2. Не простая погода с Яндекса.

Сообщение bir » 17 дек 2010 06:21

Остаётся надеяться, что яндекс не будет часто менять страницу, иначе замучаемся скрипты менять. Кстати что там насчёт исправлений? Три дня прошло...
bir
 
Сообщения: 1
Зарегистрирован: 14 дек 2010 19:59
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Версия бота: Windrop 1.6.21

Пред.След.

Вернуться в TCL скрипты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12

cron