nefart.tcl - Вот такой не фарт у вас на канале.

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

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

nefart.tcl - Вот такой не фарт у вас на канале.

Сообщение tvrsh » 28 ноя 2009 20:16

Название: nefart.tcl
Версия: 1.1
Автор: tvrsh
Описание: Скрипт постит в канал истории с сайта http://www.nefart.ru
Поддержка Suzi: Да
Пример работы:
<tvrsh> !nefart
<@bionic> Нефарт №: 11880, Добавлен: 13.08.2009 - 21:33, Добавил: ZloiZaochnik, Раздел: Разное, В натуре не фарт!: 767, Сам виноват!: 540.
<@bionic> Сегодня взломали мой почтовый ящик, как следствие, пропала немалая сумма на яндекс деньгах (около 1к) и почти все пароли. Вот такой не фарт!(
<@bionic> ###

Дополнительная информация:
Работает как по команде так и по таймеру. Время между автовыводами задается в nefart(auto). Если равно 0 то автовывод отключен.
Ссылка на скрипт: nefart.tcl
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: nefart.tcl

Сообщение wr` » 08 май 2011 20:12

доброго времени суток.поставил этот скрипт,но почему то не работает,выдает ошибку
Tcl error [pub_nefart]: can't read "q": no such variable
Аватара пользователя
wr`
 
Сообщения: 121
Зарегистрирован: 26 май 2009 21:17
Благодарил (а): 19 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.21+suzi

Re: nefart.tcl

Сообщение tvrsh » 09 май 2011 11:39

Вот, попробуй эту версию.
TCL: [ Скачать ] [ Скрыть ]
namespace eval nefart {}
setudef flag nopubnefart
set nefart(channel) #erotic
set nefart(page) http://nefart.ru/random/
set nefart(version) "1.0"
set nefart(author) "tvrsh @ IrcNet.ru"
package require http

bind pub - !nefart ::nefart::nefart
bind pub - !nef ::nefart::nefart
bind pub - !нефарт ::nefart::nefart
bind pub - !неф ::nefart::nefart

proc ::nefart::nefart {nick uhost hand chan text} {
    global nefart lastbind
    set agent "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1"
    set nefart_tok [::http::config -useragent $agent]
    set nefart_tok [::http::geturl $nefart(page) -timeout 30000]  
    set data [::http::data $nefart_tok]
    ::http::cleanup $nefart_tok

    set nefart(channel) $chan
    set asplitr [lindex {¤ • # * + °} [rand 6]]

    regsub -all -nocase -- {^.*?<div class="postpad">} $data "" data
    regsub -all -nocase -- {^.*?<div class="postpad">} $data "" data
    regsub -all -nocase -- {<div style="float:left.*?$} $data "" data
    regsub -all -- {\n} $data "
" data

    set data [string map {"
                    " "" "&quot;" "'"} $data]

    set data [encoding convertfrom utf-8 $data]
    set data [encoding convertto cp1251 $data]

    regexp {^(.*?)<div class="postinfo">} $data "" nefart_
    regexp {<div>(.*?)$} $data "" _nefart
    regexp {<a href=".*?">#(\d+)</a>} $_nefart "" q
    regexp {</a><span>(.*?)</span><span>} $_nefart "" w
    regexp {</span><span>(.*?)</span>} $_nefart "" e
    regexp {<span><a href=".*?" class="cat">(.*?)</a></span>} $_nefart "" r
    regexp {javascript&#058; vote\(.*?\((\d+)\)</span>} $_nefart "" t
    regexp {javascript&#058; voteb\(.*?\((\d+)\)</span>} $_nefart "" y

    set color [lindex {\00307 \00304 \00315 \00310} [rand 4]]  

    ::nefart::largetext $nefart(channel) "\00314Нефарт №: \00303$q\00314, Добавлен: \00303$w\00314, Добавил: \00303$e\00314, Раздел: \00303$r\00314, В натуре не фарт!: \00303$t\00314, Сам виноват!: \00303$y\00314. " $color
    ::nefart::largetext $nefart(channel) $nefart_ $color
    putserv "PRIVMSG $nefart(channel) :\00301$asplitr$asplitr$asplitr"
}

proc ::nefart::largetext {target text color {lineLen 400} {delims {.,-!}}} {
     global bor
     regsub -all {\{} $text "" text
     regsub -all {\}} $text "" text
     if {[string length $text] <= $lineLen} {
         putserv "PRIVMSG $target :$color $text "
         return 0
     }
  set _text [split $text $delims]
  set x 0; set i 0
  while {$x < $lineLen} {
    if {$i >= [llength $_text]} { return }
    set wordlen [string length [lindex $_text $i]];
      if {$x + $wordlen > $lineLen} { break }
      incr x $wordlen
      incr x; incr i
      }
putserv "PRIVMSG $target :$color [string range $text 0 [expr $x - 1]] "
::nefart::largetext $target [string trimleft [string range $text $x end]] $color $lineLen $delims
}

putlog "nefart.ru.tcl v$nefart(version) by $nefart(author) loaded."
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: nefart.tcl - Вот такой не фарт у вас на канале.

Сообщение wr` » 09 май 2011 22:40

поставил,выбивает эту ошибку

Tcl error in file 'eggdrop.conf':
wrong # args: should be "set varName ?newValue?"
while executing
"set nefart(page) <!-- m --><a class="postlink" href="http://nefart.ru/random/">http://nefart.ru/random/</a><!-- m -->"
(file "scripts/nefart.tcl" line 4)
invoked from within
"source scripts/nefart.tcl"
(file "eggdrop.conf" line 121)
Аватара пользователя
wr`
 
Сообщения: 121
Зарегистрирован: 26 май 2009 21:17
Благодарил (а): 19 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.21+suzi

Re: nefart.tcl - Вот такой не фарт у вас на канале.

Сообщение tvrsh » 09 май 2011 23:18

set nefart(page) <!-- m --><a class="postlink" href="http://nefart.ru/random/">http://nefart.ru/random/</a><!-- m -->

Такого в скрипте точно нет. Видимо, ты как-то не так копируешь или твой браузер что-то делает с этой ссылкой. Должно быть
set nefart(page) http://nefart.ru/random/
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: nefart.tcl - Вот такой не фарт у вас на канале.

Сообщение wr` » 09 май 2011 23:30

прошу прощения,да первый раз скопировал плохо,сейчас скопировал хорошо выдает
Tcl error [::nefart::nefart]: can't read "t": no such variable
Аватара пользователя
wr`
 
Сообщения: 121
Зарегистрирован: 26 май 2009 21:17
Благодарил (а): 19 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.21+suzi

Re: nefart.tcl - Вот такой не фарт у вас на канале.

Сообщение tvrsh » 10 май 2011 23:12

Не знаю, что у тебя не так. У меня все нормально работает.
<tvrsh> !nefart
<@bionic> Нефарт №: 4151, Добавлен: 07.06.2009 - 09:48, Добавил: Антиошка, Раздел: Любовь, В натуре не фарт!: 1697, Сам виноват!: 50.
<@bionic> Вчера с мужем после длительной ссоры было примирение - цветы, шампанское, красивые слова, секс.. В самый разгар которого он немого промахивается.. и у меня жуткая боль, обморок, кровища везде.. Оказалось, разошелся послеродовой шов... Вот такой не фарт..
<@bionic> ***
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: nefart.tcl - Вот такой не фарт у вас на канале.

Сообщение wr` » 12 май 2011 18:20

как я понимаю у меня грешит на эту строку
regexp {javascript: vote\(.*?\((\d+)\)</span>} $_nefart "" t
Аватара пользователя
wr`
 
Сообщения: 121
Зарегистрирован: 26 май 2009 21:17
Благодарил (а): 19 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.21+suzi

Re: nefart.tcl - Вот такой не фарт у вас на канале.

Сообщение Vertigo » 12 май 2011 20:57

Чтобы не ругалось переменными, их надо объявлять (ц) я
перед регекспом допиши set t ""
и после регекспа if {$t == ""} {putserv "PRIVMSG $chan :я не смог получить данные"; return}
Аватара пользователя
Vertigo
 
Сообщения: 107
Зарегистрирован: 20 авг 2008 23:49
Откуда: Москва
Благодарил (а): 0 раз.
Поблагодарили: 37 раз.
Версия бота: Eggdrop 1.8

Re: nefart.tcl - Вот такой не фарт у вас на канале.

Сообщение wr` » 12 май 2011 22:36

а можно примером в скрипте?
Аватара пользователя
wr`
 
Сообщения: 121
Зарегистрирован: 26 май 2009 21:17
Благодарил (а): 19 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.21+suzi

Re: nefart.tcl - Вот такой не фарт у вас на канале.

Сообщение wr` » 13 май 2011 13:07

это сделал,но нефарт то все равно не появляется :(
Аватара пользователя
wr`
 
Сообщения: 121
Зарегистрирован: 26 май 2009 21:17
Благодарил (а): 19 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.21+suzi

Re: nefart.tcl - Вот такой не фарт у вас на канале.

Сообщение tvrsh » 14 май 2011 17:32

Ты все правильно скопировал? У меня все нормально срабатывает. Не знаю в чем у тебя дело.
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: nefart.tcl - Вот такой не фарт у вас на канале.

Сообщение wr` » 14 май 2011 23:02

все правильно скопировал,проверил несколько раз,может у меня что нибудь не хватает для этого скрипта!?
Аватара пользователя
wr`
 
Сообщения: 121
Зарегистрирован: 26 май 2009 21:17
Благодарил (а): 19 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.21+suzi

Re: nefart.tcl - Вот такой не фарт у вас на канале.

Сообщение wr` » 16 май 2011 16:52

убрал это в скрипте , В натуре не фарт!: \00303$t\00314, Сам виноват!: \00303$y\00314,начал выводить нефарты
Аватара пользователя
wr`
 
Сообщения: 121
Зарегистрирован: 26 май 2009 21:17
Благодарил (а): 19 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.21+suzi

Re: nefart.tcl - Вот такой не фарт у вас на канале.

Сообщение tvrsh » 16 май 2011 22:10

Если ты действительно объявлял переменную t, то должно было работать и с этим. Во "в натуре не фарт" была бы пустота. Строку
if {$t == ""} {putserv "PRIVMSG $chan :я не смог получить данные"; return}
можно и не писать. Из-за нее прерывается процедура если переменная t не была получены из регэкспа
regexp {javascript&#058; vote\(.*?\((\d+)\)</span>} $_nefart "" t
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: nefart.tcl - Вот такой не фарт у вас на канале.

Сообщение wr` » 17 май 2011 11:33

эта переменная как я понимаю получена,а вот где она с цветом \00303$t\00314, Сам виноват! почему то у меня не прочитывает
Аватара пользователя
wr`
 
Сообщения: 121
Зарегистрирован: 26 май 2009 21:17
Благодарил (а): 19 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.21+suzi

Re: nefart.tcl - Вот такой не фарт у вас на канале.

Сообщение wr` » 12 май 2012 08:53

Доброго времени суток,не могли бы вы возобновить полноценную работу скрипта,как было с самого начала,чтоб бот выводил нефарты и по команде,и рандомно сам по таймеру!Заранее благодарен
Аватара пользователя
wr`
 
Сообщения: 121
Зарегистрирован: 26 май 2009 21:17
Благодарил (а): 19 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.21+suzi

Re: nefart.tcl - Вот такой не фарт у вас на канале.

Сообщение tvrsh » 13 май 2012 19:04

Обновил скрипт, смотри первый пост.
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.

За это сообщение автора tvrsh поблагодарил:
wr` (15 май 2012 22:34)
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: nefart.tcl - Вот такой не фарт у вас на канале.

Сообщение wr` » 15 май 2012 22:34

спасибо все отлично работает ;)
Аватара пользователя
wr`
 
Сообщения: 121
Зарегистрирован: 26 май 2009 21:17
Благодарил (а): 19 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.21+suzi

Re: nefart.tcl - Вот такой не фарт у вас на канале.

Сообщение Jake » 24 сен 2012 11:34

не подскажите как поставить антифлуд в этот скрипт ?
Jake
 
Сообщения: 26
Зарегистрирован: 21 май 2012 11:17
Благодарил (а): 3 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.21+suzi

След.

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

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

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

cron