Страница 1 из 2

slovo.tcl - толковый словарь с помощью Wiki API.

СообщениеДобавлено: 03 мар 2012 15:56
tvrsh
Название: slovo.tcl
Версия: 1.3
Автор: tvrsh
Описание: Скрипт забирает данные из Википедии используя Wiki API.
Поддержка Suzi: Да
Пример работы:
# Обычный просмотр слова. В ответ получаем описание слова, ссылку в вики и другие найденные слова по вашему запросу.
<tvrsh> !slovo irc
<@bionic> [1/9] IRC: IRC () — протокол прикладного уровня для обмена сообщениями в режиме реального времени.
<@bionic> @ Wiki: http://tinyurl.com/3xj3c3
<@bionic> См. также: IRCAM, IRC-сервисы, Список IRC-клиентов, IRC-игра, IRC +10216, IRCd, Бот (Интернет), IRC (значения).

# Просматриваем второе слово из найденных.
<tvrsh> !slovo irc -2
<@bionic> [2/9] IRCAM: IRCAM (, Институт исследования и координации акустики и музыки) — исследовательская организация, созданная по поручению Жоржа Помпиду композитором Пьером Булезом для современных музыкальных и музыковедческих исследований.
<@bionic>
<@bionic> @ Wiki: http://tinyurl.com/6uksfjs
<@bionic> См. также: IRC-сервисы, Список IRC-клиентов, IRC-игра, IRC +10216, IRCd, Бот (Интернет), IRC (значения).

# Поиск слова в польской википедии.
<tvrsh> !slovo irc !pl
<@bionic> [1/10] IRC: * Internet Relay Chat – usuga sieciowa
<@bionic> @ Wiki: http://tinyurl.com/2gbemw
<@bionic> См. также: Ircha, IRCAM, IRCd, Bot (IRC), Irchester, IRC +10216, IRCnet, Irchenrieth, IrcII.

# Поиск слова в украинской википедии.
<tvrsh> !slovo irc !uk
<@bionic> [1/3] IRC: IRC () — сервіс Інтернет, який надає користувачам можливість спілкування шляхом надсилання текстових повідомлень багатьом людям з усього світу одночасно (в режимі реального часу).
<@bionic> @ Wiki: http://tinyurl.com/86gdc4n
<@bionic> См. также: IRCAM, IRC (значення).

# Просматриваем второе слово в украинской википедии.
<tvrsh> !slovo irc -2 !uk
<@bionic> [2/3] IRCAM: IRCAM (, Інститут дослідження й співкоординації акустики/музики) — дослідницько-мистецька установа у Парижі, що спеціалізується на авангардній електронній музиці та міждисциплінарних науково-мистецьких проектах.
<@bionic> @ Wiki: http://tinyurl.com/7tc2c8c
<@bionic> См. также: IRC (значення).

Дополнительная информация: Писал для своего канала викторины. Удобно пользоваться если сомневаешься в правильности ответов.
Ссылка на скрипт: slovo.tcl

Re: slovo.tcl - толковый словарь с помощью Wiki API.

СообщениеДобавлено: 03 мар 2012 19:19
UnInViTeD
У меня вот такое пишет:
<@KoLoBoK> IRC: IRC ()  ?@>B>:>; ?@8:;04=>3> C@>2=O 4;O >1<5=0 A>>1I5=8O<8 2 @568<5 @50;L=>3> 2@5<5=8.
<@KoLoBoK> http://ru.wikipedia.org/wiki/IRC

Re: slovo.tcl - толковый словарь с помощью Wiki API.

СообщениеДобавлено: 03 мар 2012 21:14
Radiosignal
Закомментируй строку с utf-8.

Re: slovo.tcl - толковый словарь с помощью Wiki API.

СообщениеДобавлено: 04 мар 2012 18:37
tvrsh
Немного обновил скрипт. Теперь в настройках можно указывать язык и при отсутствии найденных результатов скрипт сообщает об этом.

Re: slovo.tcl - толковый словарь с помощью Wiki API.

СообщениеДобавлено: 14 мар 2012 16:46
hxm
tvrsh,
хороший скрипт, ещё бы сделать продолжение просмотра типа
!слово москва~2
ну и ответ
http://ru.wikipedia.org/wiki/%D0%9C%D0% ... 0%B2%D0%B0
захламляет немного, или он у вас уже на русском?
можно даже tinyurl приспособить как уже сделано в etitle.tcl

Re: slovo.tcl - толковый словарь с помощью Wiki API.

СообщениеДобавлено: 14 мар 2012 16:58
tvrsh
Все что ты написал уже сделано. Попозже выложу.

Re: slovo.tcl - толковый словарь с помощью Wiki API.

СообщениеДобавлено: 14 мар 2012 20:43
tvrsh
Обновил скрипт в первом посте. Tinyurl немного подтормаживает, надо будет переписать используя api, будет побыстрее.

Re: slovo.tcl - толковый словарь с помощью Wiki API.

СообщениеДобавлено: 15 мар 2012 02:29
hxm
а реально сделать чтобы небыло переноса на другую строку .. например так:
описание @ http://tinyurl.com/7quprvw ?? а то думаю многих может раздражать строка лишняя.
А ещё хорошо бы присобачить перечислений значений слова (ну это как бы на будущее, если не лень будет заняться), а то многие обычно и не знают из чего выбрать чтобы посмотреть описание 8-)

Re: slovo.tcl - толковый словарь с помощью Wiki API.

СообщениеДобавлено: 15 мар 2012 10:29
tvrsh
Дописать реально все что угодно. Но не "присобачить". Этим займись сам.

Re: slovo.tcl - толковый словарь с помощью Wiki API.

СообщениеДобавлено: 17 мар 2012 22:02
tvrsh
Скрипт обновил. Добавил предложенное ранее отображение всех найденных вариантов. Также появилась возможность указывать в команде язык википедии.
Примеры использования команд в первом посте темы.

Re: slovo.tcl - толковый словарь с помощью Wiki API.

СообщениеДобавлено: 18 мар 2012 01:42
hxm
супермощный скрипт

Re: slovo.tcl - толковый словарь с помощью Wiki API.

СообщениеДобавлено: 02 апр 2012 22:43
wr`
Radiosignal писал(а):Закомментируй строку с utf-8.


что именно закомментировать?

Re: slovo.tcl - толковый словарь с помощью Wiki API.

СообщениеДобавлено: 03 апр 2012 13:01
Radiosignal
TCL: [ Скачать ] [ Скрыть ]
if {[info exists ::sp_version]} {
        #set data [encoding convertfrom utf-8 $data]
    } else {
        set data [encoding convertto cp1251 [encoding convertfrom utf-8 $data]]
    }
 

Re: slovo.tcl - толковый словарь с помощью Wiki API.

СообщениеДобавлено: 04 апр 2012 21:13
wr`
не помогло :(

Re: slovo.tcl - толковый словарь с помощью Wiki API.

СообщениеДобавлено: 05 апр 2012 12:16
Radiosignal
Ставь бота с Suzi. Там он точно будет работать у тебя.

Re: slovo.tcl - толковый словарь с помощью Wiki API.

СообщениеДобавлено: 06 апр 2012 10:11
tvrsh
Если бот без Suzi патча, то разбираться надо со строкой
set data [encoding convertto cp1251 [encoding convertfrom utf-8 $data]]
так как она срабатывает в том случае, если этого патча нет.

Re: slovo.tcl - толковый словарь с помощью Wiki API.

СообщениеДобавлено: 06 апр 2012 10:52
wr`
я ее вообще убирал,менял местами кодировку,везде одно и тоже,не меняется ничего

•(10:48:40)• <windows> [1/9] IRC: IRC ()  ?@>B>:>; ?@8:;04=>3> C@>2=O 4;O >1<5=0 A>>1I5=8O<8 2 @568<5 @50;L=>3> 2@5<5=8.
•(10:48:40)• <windows> @ Wiki: http://tinyurl.com/3xj3c3
•(10:48:40)• <windows> См. также: IRCAM, IRC-A5@28AK, !?8A>: IRC-:;85=B>2, IRC-83@0, IRC +10216, IRCd, >B (=B5@=5B), IRC (7=0G5=8O).

Re: slovo.tcl - толковый словарь с помощью Wiki API.

СообщениеДобавлено: 06 апр 2012 10:56
Vertigo
Попробуй в http::geturl добавить -binary true
Было:
catch {set slovo_tok [::http::geturl "http://$lang.wikipedia.org/w/api.php?action=opensearch&search=$text&prop=info&format=xml" -timeout "15000"]} error

Стало:
catch {set slovo_tok [::http::geturl "http://$lang.wikipedia.org/w/api.php?action=opensearch&search=$text&prop=info&format=xml" -timeout "15000" -binary true]} error

Re: slovo.tcl - толковый словарь с помощью Wiki API.

СообщениеДобавлено: 06 апр 2012 11:06
wr`
спасибо огромное!все получилось!заодно вопрос,а такое везде прокатит,где такие же проблемы были? ;)

Re: slovo.tcl - толковый словарь с помощью Wiki API.

СообщениеДобавлено: 11 апр 2013 15:17
Волк
bad index "0+1": must be integer or end?-integer?

отчего вот такую ошибку выдавать может? подозреваю опять какие то проблемы со старой версией тикля