Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

MyDC.ru _ Сетевые скрипты [PtokaX] _ Цитатник Рунета

Автор: FromeN 7.8.2008, 13:09

Название скрипта: Bash.Org.Ru_Script
Версия скрипта: ?
Версия API: API1 & API2
Автор: Nickolya
Описание скрипта: Скрипт показывает цитаты с bash.org.ru. Скрипт под API 2 содержит модернизацию в виде возможности выбора по таймеру посылать цитаты, по команде или одновременно двумя способами из меню и если из меню то куда посылать в приват или мейн!

Дополнительно:

- Для API 1 качать это и размещать в папке хаба (где PtokaX.exe).  pxwsa_l51.rar ( 6.75 килобайт ) : 266
Если не будет работать, тогда еще вот это:  cc3270.rar ( 220.58 килобайт ) : 249

- Для API 2библиотеку PXLuaSocket качаем вот отсюда http://mydc.ru/topic43.html

 Bash.Org.Ru_Script_API_1.rar ( 73.39 килобайт ) : 292
 Bash.Org.Ru_Script_API_2.rar ( 21.58 килобайт ) : 850
 

Автор: 4eBA 19.11.2008, 1:18

Просил и прошу...дайте .dll под х64.
А то все скрипты почти не работают :( а очень нужно так как на сервере нельзя установить х86-32 птоху! beat_brick.gif
Помогите а то куча скриптов не работает из-за .dll

Автор: Nickolya 19.11.2008, 10:40

Таких библиотек не существует! Я не видел точно... Если так срочно надо, тогда обращайся к разработчикам http://mydc.ru/r/?http://board.ptokax.ch/index.php?board=38.0.

Автор: OtshelnikFm 3.1.2009, 16:54

Цитата(sphinx @ 9.12.2008, 0:10) *
Да, можно, я так и сделал. big_smile1.gif

Ну а почему бы не подсказать как меню прикрутить? Смысл тогда постить сообщение?

Ребят - вопрос:
iSecondsToSend = 60 * 5 -- время в скундах для вывода цитат в чат
iSecondsToSendNew = 60 * 5 -- время в скундах для вывода новых цитат в чат
тоесть через 5 минут в чат выводиться будут? и новые цитаты тоже через 5 минут?
Просто надо чтобы по запросу из меню выдавалось по одной цитате в чат. Соответственно только для того кто запросил, а не всем пользователям

Автор: ustas 4.1.2009, 0:18

Цитата(Wariner @ 3.1.2009, 22:28) *
Жмём в браузере обновить текущую страницу и качаем из первого поста
для первого API в архиве есть три файла
__Core.c51.lua
Core.c51.lua
Core.lua
я так понимаю, что первые два - скомпилированные версии третьего
и в них прописаны странные пути C:\Core.lua и C:\0.3.6.0\scripts\BashOrgRuPath\Core.lua
они нужны или можно использовать Core.lua?

вообщем использовал core.lua, закоментил в нем две строчки (как и core.lua для 2-го апи)
работает )

Автор: Wariner 4.1.2009, 10:15

MEXAHuK: Ещё раз тебе объясняю.
В функции SendQuote() строка Core.SendToAll(sMsg), поэтому ты видишь сообщение и считаешь что всё работает. Однако сообщение это видят все! А в птоке идёт ошибка на строчку Core.SendToUser....(говорю о том что лежало в архиве.)

PS: трёп офф.

Автор: D'aspid 4.1.2009, 16:32

Цитата
scripts\Bash.Org.Ru Script.lua:102: bad argument count to 'SendPmToUser' (3 expected, got 2)

качал скрипт из первого поста
В чат проходит команда:
Цитата
[18:29:50] <D'aspid> +BASH_show

Автор: Wariner 4.1.2009, 20:19

В самом скрипте ничего не менял?

Код
            if sTypeMsg == "PM" then
                Core.SendPmToUser(tCurUser, sBot, SendQuote())
            end

Автор: Setuper 4.1.2009, 20:25

Вроде рабочий скрипт. Ошибки бывают из-за самовольных исправлений.

Автор: D'aspid 4.1.2009, 20:26

Цитата
В самом скрипте ничего не менял?

ничего не менял скачал из 1 поста и сразу поставил.
По запросу команды цитата выводиться в чат.

Автор: Wariner 4.1.2009, 20:41

Покажи пожалуйста настройки скрипта

Автор: D'aspid 4.1.2009, 21:13

Вот смотри.

 Bash.Org.Ru_Script.lua ( 4.13 килобайт ) : 90
 

Автор: Wariner 5.1.2009, 0:34

Скрипт посмотрел в нём всё правильно. Я предполагаю ты просто не заменил файл Core.lua. В архиве он немного отличается от старой версии!

Автор: D'aspid 5.1.2009, 9:16

Цитата
Я предполагаю ты просто не заменил файл Core.lua. В архиве он немного отличается от старой версии!

Хм.. да так и есть..Заменил поставил работает, спасибо.

Автор: Digitex =) 8.1.2009, 0:39

У меня под API 2 тупо выводит команды в чат и дальше никаких действий не происходит... Все делал как указано. В скрипте ничего не менял, все как положено заменил... LUA 5.1.3 В чем может быть проблема помогите разобраться пожалуйста!

Автор: Wariner 8.1.2009, 0:49

если проскакивают команды значит в скрипте ошибка. Смотри в птоке и отписывай сюда.

Автор: Digitex =) 8.1.2009, 1:12

Все спасибо! Разобрался... У меня был один скрипт называется он "Веселый чат" (гдето тут на форуме его брал), так вот он перекрывал дорогу Цитатнику. Отключил "Веселый чат" и все заработало. Так что если кто сталкнется с такой же проблемой - читайте... =)

И еще маленький вопросик =) Не подскажете как сделать чтобы цитата по запросу выводясь в чат была видна не только тому, кто запросил, а всем?

Автор: Wariner 8.1.2009, 11:08

Цитата(Digitex =) @ 8.1.2009, 1:12) *
И еще маленький вопросик =) Не подскажете как сделать чтобы цитата по запросу выводясь в чат была видна не только тому, кто запросил, а всем?

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

Автор: mariner 18.1.2009, 19:31

В общем вопрос - может ли уважаемый разработчик добавить в скрипт даже если включён таймер - вывод цитаты в личку по запросу. Ибо у меня цитата раз в 40мин кидается, чтоб чат не зафлуживать. А так бы каждый сам бы решал когда читать. PS ну и хорошо бы сделать очистку базы. Чтоб при досчтижении определенного порога оно удаляло последнюю цитату, а то бот боянами говорит - не дело big_smile.gif

Автор: Wariner 18.1.2009, 21:58

Добавил третий режим.

Автор: mariner 18.1.2009, 22:20

Грасиас, Сеньйор!

Автор: _ramzes_ 27.1.2009, 1:59

А можно как нить организовать работу скрипта через PROXY или на худой конец port maping (правда вот пробовал последнее - не получилось!) Подскажите плиззззззз!!! big_smile.gif

Автор: mariner 27.1.2009, 2:10

никак.

Автор: belka 2.2.2009, 10:33

Здравствуйте,дорогие мальчики! Помогите плиз : я так и не врубилась что надо сделать чтобы скрипт заработал?
У меня тоже тупо в чате пишет : +BASH_show
......и всё. Обьясните.плиз мне поподробнее ,если можете...что и именно где заменить. моё мыло - [затерто модератором, нельзя явно указывать адреса почты, дабы не поулчать многоспама, если надо личную консультацию - пм на форуме]
C уважением и наилучшими пожеланиями belka218. still_dreaming.gif beat_plaster.gif still_dreaming.gif

Автор: D'aspid 2.2.2009, 10:45

Скачать скрипт с 1 поста. Под API 2 все работает прекрасно.

Автор: belka 2.2.2009, 12:13

Неа. никак. терь даже галка не ставится на скрипт... блин. still_dreaming.gif

И ваще. Я девчонка. 22 года. неужели так трудно обьяснить подробнее - терь ваще ничего установить не могу. У мя на хабе около 3 тыщ народа . Админ , милый. помоги! sweet_kiss.gif still_dreaming.gif

Автор: mariner 2.2.2009, 12:31

Цитата(belka @ 2.2.2009, 12:13) *
Неа. никак. терь даже галка не ставится на скрипт... блин. still_dreaming.gif

И ваще. Я девчонка. 22 года. неужели так трудно обьяснить подробнее - терь ваще ничего установить не могу. У мя на хабе около 3 тыщ народа . Админ , милый. помоги! sweet_kiss.gif still_dreaming.gif



Ща поможет не милый, а бородатый админ big_smile.gif У тебя какая пточка?

Автор: belka 2.2.2009, 12:46

Цитата(mariner @ 2.2.2009, 12:31) *
Ща поможет не милый, а бородатый админ big_smile.gif У тебя какая пточка?

ой. 4.1.1

Цитата(belka @ 2.2.2009, 12:45) *
ой. 4.1.1 так уж и бородатый? surrender.gif

Автор: mariner 2.2.2009, 13:26

вполне бородатый.

http://mydc.ru/ipb.html?act=attach&type=post&id=1470

Вот это тыркай

Автор: D'aspid 2.2.2009, 14:31

Качай это:
http://mydc.ru/ipb.html?act=attach&type=post&id=74
и вставляй эти библиотеки в папку с птохой libs

Автор: Владимир 5.2.2009, 13:59

не пашет выдает +bash_show

 BashOrgRuPath.rar ( 19.78 килобайт ) : 18
 PXLuaSocket_2_1_.0.2.rar ( 482.74 килобайт ) : 21
 Bash.Org.Ru_Script.rar ( 1.8 килобайт ) : 12
 

Автор: Wariner 5.2.2009, 14:34

ошибки в студию!

Автор: Владимир 5.2.2009, 15:35

Цитата(Wariner @ 5.2.2009, 14:34) *
ошибки в студию!

По птохе ошибок нет но и цитат нет.Только +bash_show в чате.Отключал все остальные скрипты и тож самое.

Автор: mariner 5.2.2009, 17:09

ты какой режим включил. там 3 режима. по таймеру, через меню и комбо. ЗЫ он у тя цитаты скачивает?

Автор: Владимир 5.2.2009, 18:37

Цитата(mariner @ 5.2.2009, 17:09) *
ты какой режим включил. там 3 режима. по таймеру, через меню и комбо. ЗЫ он у тя цитаты скачивает?

как выложили ни чего не менял sType = "Menu" а с цитатами *** Сделали табличку с номерами... Всего 0 номеров!

Автор: Wariner 5.2.2009, 20:25

ты тобиш инет не включал?! Поэтому и команда в чат от того что нечего посылать....

Автор: Владимир 5.2.2009, 20:35

Цитата(Wariner @ 5.2.2009, 20:25) *
ты тобиш инет не включал?! Поэтому и команда в чат от того что нечего посылать....

при выключеном инете у меня хаб вообще б не работал.

Автор: Wariner 5.2.2009, 20:53

скрипт поправил теперь при отсутствии базы должно выводится сообщение об этом!

Цитата(Владимир @ 5.2.2009, 20:35) *
при выключеном инете у меня хаб вообще б не работал.

значит базу попробуй базу обновить

Автор: Владимир 5.2.2009, 21:04

Цитата(Wariner @ 5.2.2009, 20:53) *
скрипт поправил теперь при отсутствии базы должно выводится сообщение об этом!


значит базу попробуй базу обновить

Пробовал при этом выдает
+bash_refresh

Автор: Wariner 5.2.2009, 21:10

всё работает как на 0400 так и на 0411

Цитата
[21:06:38] <Аспирант> *** SONY, готов к обновлению базы баша! Максимальное время ожидания - 12 секунд.
[21:06:38] <Аспирант> *** Данные приняты в размере 59451 Кб за 1.812 секунд.
[21:06:38] <Аспирант> *** Обновление базы закончено! Добавлено 100 цитат. Щас сохраним все данные...
[21:06:38] <Аспирант> *** Сделали табличку с номерами... Всего 100 номеров!

ты про какой инет говоришь? я про внешку!

Автор: Владимир 5.2.2009, 21:32

Цитата(Wariner @ 5.2.2009, 21:10) *
всё работает как на 0400 так и на 0411

ты про какой инет говоришь? я про внешку!

инет у меня один он же и внеш и внутр

Автор: Wariner 5.2.2009, 22:02

библиотеки то ты положил в папку "scripts/libs/" ?

Цитата(Владимир @ 5.2.2009, 21:04) *
Пробовал при этом выдает
+bash_refresh

если выпадает команда значит есть ошибка! пиши ошибку попробуем исправить

Автор: Владимир 5.2.2009, 22:12

Цитата(Wariner @ 5.2.2009, 22:02) *
библиотеки то ты положил в папку "scripts/libs/" ?


если выпадает команда значит есть ошибка! пиши ошибку попробуем исправить

в том то и дело что по птоке Нет синтаксических ошибок в файле скрипта Bash.Org.Ru Script.lua .И библиотеку скачал.Но при показать цитату выдает +bash_show при обновить базу цитат +bash_refresh а в самом начале *** Сделали табличку с номерами... Всего 0 номеров!

Автор: D'aspid 5.2.2009, 22:18

Ну если ты качал с 1 поста, то проблем быть недолжно.Может ты старый файл Core который у тебя возможно стоял до этого в папке BashOrgRuPath не заменил новым который скачал с 1 поста? Попробуй также отключить все скрипты и попробывать врубить только Башорг.

Автор: Владимир 5.2.2009, 22:27

Цитата(D'aspid @ 5.2.2009, 22:18) *
Ну если ты качал с 1 поста, то проблем быть недолжно.Может ты старый файл Core который у тебя возможно стоял до этого в папке BashOrgRuPath не заменил новым который скачал с 1 поста? Попробуй также отключить все скрипты и попробывать врубить только Башорг.

качал я с этого же раздела тот что в самом начале я хз какой это пост 1 или 10 тый.У меня Башорга до этого вообще не было.Башорг включал отдельно не пашет.

Автор: D'aspid 5.2.2009, 22:45

Какую библиотеку ты скачал? Поменяй полностью удалив старые и поставив новые http://mydc.ru/ipb.html?act=attach&type=post&id=74
Вот ниже полностью скрипт и обновлення база, пробуй

 Bash.Org.Ru_Script_API_2.zip ( 34.22 килобайт ) : 49
 

Автор: Владимир 5.2.2009, 23:03

Цитата(D'aspid @ 5.2.2009, 22:45) *
Какую библиотеку ты скачал? Поменяй полностью удалив старые и поставив новые http://mydc.ru/ipb.html?act=attach&type=post&id=74
Вот ниже полностью скрипт и обновлення база, пробуй

Библиотеку ту что дали в самом начале раздела Для API 2библиотеку PXLuaSocket качаем вот отсюда http://mydc.ru/topic43.html
Ну да лан х. с ней удалил все.Ставлю все по твоим ссылкам.Знаеш прогресс
*** Сделали табличку с номерами... Всего 100 номеров!
но на этом он бл. заканчивается один х. при показать цитату в чате вижу +bash_show super_man.gif

Автор: D'aspid 5.2.2009, 23:07

давай ты мне напишешь в асю а там уже разберемся. 484023157

Автор: Владимир 5.2.2009, 23:32

Цитата(D'aspid @ 5.2.2009, 23:07) *
давай ты мне напишешь в асю а там уже разберемся. 484023157

тоже не судьба..квип старой версии уже давно не пашет а обновлять я пасс не помню

Автор: Wariner 5.2.2009, 23:40

при выпадении команд должна быть ошибка! надо просто перед тестом открыть вкладку скриптов в птоке потом нажать на меню и посмотреть что выдаст в окошке со скриптами при выпадении команды!

Автор: Владимир 6.2.2009, 1:51

Цитата(Wariner @ 5.2.2009, 23:40) *
при выпадении команд должна быть ошибка! надо просто перед тестом открыть вкладку скриптов в птоке потом нажать на меню и посмотреть что выдаст в окошке со скриптами при выпадении команды!

В окне со скриптами Нет синтаксических ошибок в файле скрипта Bash.Org.Ru Script.lua


Проблема найдена Была глючная птоха скачал другую и теперь пока все пашет.Всем спс

Автор: li4nost 23.2.2009, 15:26

скажите, как мне все настроить?
птока стоит на локальном ипе боз доступа в нет.
есть и еще 1 ип - от провайдера.
я так понимаю если хаб стоит на моем компе, то и цитаты все загружать буду я со своего трафика, так?
с погодой тоже - не получается обновиться :(

Автор: D'aspid 23.2.2009, 16:00

Цитата
я так понимаю если хаб стоит на моем компе, то и цитаты все загружать буду я со своего трафика, так?

да

Автор: li4nost 23.2.2009, 16:16

ну пускай и с меня грузится.
но как это сделать? не так уж много он накачает

Автор: Wariner 23.2.2009, 18:00

Скрипт будет работать только на компе где есть интернет. Прокси и остальные дела не помогут!

Автор: li4nost 23.2.2009, 20:28

т.е. будет работать на тех хабах, которые работают не по лану, а через нет. так?

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

Автор: mariner 23.2.2009, 21:15

зачем менять то? запрети вход с инета. А хаб настрой "фонтанировать" на все сетеые интерфейсы. Чтоб со всех сетей был доступен.

Автор: li4nost 23.2.2009, 22:49

а можно поподробнее?

у меня внутренний ip 172,16,2,90. в сети начинаются с 172,16,0,0 до ну пускай 255,255.

Автор: mariner 23.2.2009, 22:52

думаюется, что от 172.0.0.0 до 172.255.255.255 как раз будет диапазон....

Автор: Setuper 23.2.2009, 23:03

локальными ip адресами являются только адреса 172.16.0.0 - 172.31.255.255

Автор: li4nost 23.2.2009, 23:06

шайсэ, я все равно не понял что мне надо сделать :( и как всё это будет выглядеть.

у меня все ограничено 16 - только 172,16....

Автор: Setuper 23.2.2009, 23:07

Без инета никак не сделать. Неужели не понятно, что нужна связь с инетом для получения новых цитат.

Автор: mariner 23.2.2009, 23:18

Цитата(Setuper @ 23.2.2009, 23:03) *
локальными ip адресами являются только адреса 172.16.0.0 - 172.31.255.255


хм, не знал. ну ладно... тады такой диапазон (хотя у провэйдера странный выбор какой-то, нестандартный. Они малость себя ограничили на расширение....)

Автор: Setuper 23.2.2009, 23:25

10.0.0.0 — 10.255.255.255 (1 сеть класса A)
172.16.0.0 — 172.31.255.255 (16 сетей класса B)
192.168.0.0 — 192.168.255.255 (256 сетей класса C)

Всё должно быть кратно 16.

Автор: Wariner 23.2.2009, 23:29

если уж зашла речь о ip адресах, то как определить в какой сети ип динамический в какой нет?

Автор: Setuper 23.2.2009, 23:31

это тебе должен сказать твой провайдер

Автор: Strannik 23.2.2009, 23:39

Цитата(D'aspid @ 5.2.2009, 23:45) *
Какую библиотеку ты скачал? Поменяй полностью удалив старые и поставив новые http://mydc.ru/ipb.html?act=attach&type=post&id=74
Вот ниже полностью скрипт и обновлення база, пробуй


Спасибо все работает тока нужно его ставить в середину скриптов
в конце работать не хочит

еще вопросик можно его переделать для стихов
был такой для протак 3.6.0

Автор: li4nost 24.2.2009, 14:13

все оказалось проще простого!
big_smile.gif
для начала заменил адрес хаба на интернетовский тп и обновился.

потом немного подумал, вернул все назад и обновил базу с включеным интернетом (как я понял, решило все впн-соединение, а не через прокси) - все кул big_smile.gif

Автор: KRIOS 4.3.2009, 11:19

Здравствуйте, а можно как нибудь сделать так, чтобы скрипт под API1 имел меню для получения цитат в личку, то есть кто захотел тот посмотрел, как с погодой=) , и чтобы в общий чат цитаты вообще не выводились? Заранее спасибо.

Автор: Wariner 4.3.2009, 11:55

переходи на новые версии птоки... врядли кто возьмётся переделывать первый апи....

Автор: BeSeR 17.3.2009, 20:36

Почему то не включается скрипт(

Автор: Wariner 17.3.2009, 20:46

Какой API ? какие ошибки? Может не те библиотеки воткнул? Что за тупые посты? Мы угадывать должны?

PS: устное предупреждение!!!!

Автор: Digitex =) 20.3.2009, 7:10

Народ подскажите пожалуйста как сделать, что бы скрипт по команде выдавал не только случайные цитаты, но и новые. Т.е. команда +BASH_show пусть выдает случайные, а например +BASH_show_new - только новые.
Подскажите пожалуйста кто знает. Буду весьма благодарен. И думаю не только я.

Автор: Azuma 21.3.2009, 22:11

Цитата(Владимир @ 5.2.2009, 23:03) *
Библиотеку ту что дали в самом начале раздела Для API 2библиотеку PXLuaSocket качаем вот отсюда http://mydc.ru/topic43.html
Ну да лан х. с ней удалил все.Ставлю все по твоим ссылкам.Знаеш прогресс
*** Сделали табличку с номерами... Всего 100 номеров!
но на этом он бл. заканчивается один х. при показать цитату в чате вижу +bash_show super_man.gif
У меня такая же проблема делает таблицу с 100 номерами и все хоть за обновляйся, подскажите как решить эту проблему.

Автор: jokersergiev 21.3.2009, 22:41

Цитата(Wariner @ 4.3.2009, 11:55) *
переходи на новые версии птоки... врядли кто возьмётся переделывать первый апи....

почти переделал, только вот не могу понять что надо прописать при получении цитаты принудительно
в апи2 это выглядит вот так:

if sCmd == "BASH_show" then
Core.SendPmToUser(tCurUser, sBot, SendQuote())

переведите плиз...
как я думаю должно выглядеть так

if sCmd == "BASH_show" then
tCurUser:SendData(sBot, "*** "То что не знаю что сюда писать")

Автор: Wariner 21.3.2009, 23:10

Цитата(Azuma @ 21.3.2009, 22:11) *
У меня такая же проблема делает таблицу с 100 номерами и все хоть за обновляйся, подскажите как решить эту проблему.

читай:
Цитата(Владимир @ 6.2.2009, 1:51) *
Проблема найдена Была глючная птоха скачал другую и теперь пока все пашет.Всем спс



если переводить вот это:
Код
if sCmd == "BASH_show" then
Core.SendPmToUser(tCurUser, sBot, SendQuote())

будет
Код
if sCmd == "BASH_show" then
tCurUser:SendData(sBot, "*** ".. SendQuote())

не забудь посмотреть как изменена функция SendQuote() (изменена не сильно но существенно!)

Автор: jokersergiev 21.3.2009, 23:16

так поменял, на птоке 0.3.5.2 пашет стабильно, но теперь не могу найти что отвечает за то чтобы бот писал кому то в общий чат опрпеделенно или в личку
тоесть при команде баш_шоу он выдает цитату но ее видят все

Автор: Wariner 21.3.2009, 23:19

читай внимательнее

Цитата(Wariner @ 21.3.2009, 23:10) *
не забудь посмотреть как изменена функция SendQuote() (изменена не сильно но существенно!)

Автор: jokersergiev 21.3.2009, 23:44

Цитата(Wariner @ 21.3.2009, 23:19) *
читай внимательнее

Сдаюсь))) хоть убей не вижу че менять надо(((

Автор: Wariner 21.3.2009, 23:57

Код
function SendQuote()
    ...
    local sMsg = "\t\t\t[ Bash.Org.Ru - Цитатник Рунета ]\r\n"..
    iLine.."\r\n"..
    " [ Цитата #"..tNumbers[iNumber]..", Добавлено "..tAllData[tNumbers[iNumber]]["sPubDate"].." ]"..sNew.."\r\n"..
    "\r\n"..
    DoNeedFormat(tAllData[tNumbers[iNumber]]["sData"]).."\r\n"..
    "\r\n"..
    iLine.."\r\n"
    return sMsg
end

обрати внимание на последнюю строчку

Автор: jokersergiev 22.3.2009, 1:03

Кароч сделал с помощью конвертера и все, спасибо за внимание

Автор: THE STRELOK 22.3.2009, 11:39

А как можно сделать так, чтобы цитати брались не из инета, а с лок. сервера? Дело в том, что у нас в лок. сети есть сервер с цитатами рунета, и хотелось, чтобы цитаты брались от туда, как такое сделать?

Базы обновляются, но при вводе команды показать цитаты, пишет, что в базе нет данных, хотя с лок. сервера цитаты скачались

Цитата
[13:38:02] <bash.org.ru> *** Данные приняты в размере 60394 Кб за 3.5620000000017 секунд.
[13:38:02] <bash.org.ru> *** Обновление базы закончено! Добавлено 0 цитат. Щас сохраним все данные...


Показ цитат:
Цитата
[13:39:00] <bash.org.ru> В базе пока нет сообщений!!

Автор: Wariner 22.3.2009, 11:39

написать локальный адрес и проверить парсинг

Автор: THE STRELOK 22.3.2009, 11:50

Адрес лок. сервера:

Код
http://10.2.33.38/rss/bash.org.ru.html

Вот так выглядит страница цитаты:
Код
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Bash.Org.Ru</title>
<link href="/_inc/css/rss_reader_bash.css" rel="stylesheet" type="text/css" media="all">
</head>
<body><div id="page">
<div class="header">
<img width="300" height="40" alt="bash.org.ru" src="/_inc/img/rss/bash/logo.gif">Bash.Org.Ru - Цитатник Рунета</div>
<div id="quotes">
<div class="q">
<div class="vote">
<a href="http://bash.org.ru/quote/402898">Цитата #402898</a> 
            , Sat, 21 Mar 2009 11:12:01 +0400</div>
<div>Морские новости: &quot;В Ильичевском порту тепловоз раздавил автомобиль ГАИ, приехавший красть солярку&quot;<br>Вот оно как бывает - тепловоз подкрался незаметно.</div>
</div>
</div>
</div></body>
</html>

Цитаты с лок. сервера сохраняются в xml файл, который в папке BashOrgRuPath/Bash.Org.Ru.xml
Но просмотреть нельзя, пишет, база пуста :(

Конф. файл:
Код
sBot = "bash.org.ru"                                    -- имя бота (оставьте равным "" для имени бота с хаба)
rHost = "vx.pvt.454.ru"                        -- доменное имя
rFile = "/rss/"                                -- путь к нужному файлу
iCanWait = 12                                -- максимальное время ожидания в секндах (увеличить если все нормально и ошибка 'timeout')
iMaxLength = 100                            -- макс. длинна строки для оформлеиня цитат
sPath = "BashOrgRuPath/"                    -- папка скрипта
sMainDataTbl = sPath.."tAllData.tbl"        -- таблица с цитатами
sDownloadedData = sPath.."Bash.Org.Ru.xml"    -- файл из инета
sNewNumbers = sPath.."tNewNumbers.tbl"        -- новые цитаты
sCoreFile = sPath.."Core.lua"                -- файл с функциями


Файл Core.lua(немного подправил, т.к. не скачивало страницу:
Код
function SendRequest()
    local iStart = os.clock()
    local sIncomingBuffer, iErrorCode, tData = http.request("http://"..rHost.."/"..rFile.."/bash.org.ru.html?#41;
    if iErrorCode == 200 then
        Core.SendToOps("<"..sBot.."> *** Данные приняты в размере "..(tData["content-length"] or 0).." Кб за "..(os.clock() - iStart).." секунд.")
        SaveData(sDownloadedData, sIncomingBuffer)
        ParseData(sIncomingBuffer)
    else
        Core.SendToOps("<"..sBot.."> *** Ошибка при получении данных ("..iErrorCode..")!!!")
    end
end

Автор: Wariner 22.3.2009, 12:01

исправления файла Core.lua откати назад!

вот тут же написано

Цитата
rFile = "/rss/" -- путь к нужному файлу

должно быть так
Код
rHost = "10.2.33.38"                        -- доменное имя
rFile = "/rss/bash.org.ru.html?#34;                                -- путь к нужному файлу

вместо ип конечно же можно доменное имя написать а можно и так оставить




а не скачивается потому что ошибка!
Код
local sIncomingBuffer, iErrorCode, tData = http.request("http://"..rHost.."/"..rFile.."/bash.org.ru.html?#41;

приглядись чего не хватает?

Автор: THE STRELOK 22.3.2009, 12:06

Цитаты скачивает

Цитата
[14:03:05] <bash.org.ru> *** Данные приняты в размере 60394 Кб за 1.4529999999977 секунд.
[14:03:05] <bash.org.ru> *** Обновление базы закончено! Добавлено 0 цитат. Щас сохраним все данные...

Но не показывает :(
Цитата
[14:04:10] <bash.org.ru> В базе пока нет сообщений!!!

Автор: Wariner 22.3.2009, 12:09

блин ну ты видишь что что данные получает а таблиицы не делает! значит парсинг не такой нужен!!! Просто скрипт не может сделать таблицу(вынуть нужные данные из всех которых получил)

Автор: THE STRELOK 22.3.2009, 12:20

А как сделать, чтобы таблица получала данные?

Автор: Wariner 22.3.2009, 12:55

надо смотреть структуру нужные данные выделять а ненужные заменять

Автор: THE STRELOK 22.3.2009, 13:02

Если честно, я не знаю как заменять некоторые данные, например ссылку <a href="link"></a>. Как я понял, редактировать надо здесь:

CODE
for sWhatNeedToGsub, sToWhat in pairs(tNeedToGsub) do
sIncomingBuffer = sIncomingBuffer:g(sWhatNeedToGsub, sToWhat)
end
local sIncomingBuffer = sIncomingBuffer:g("<br>", "\r\n")
local sNeedInfo = ""
for sNeedInfo in sIncomingBuffer:gmatch("(<item>.-</item>)") do
--local _,_, sGuid = sNeedInfo:find("(<item>.-<guid>.*</guid>)")
--local sIncomingBuffer = sIncomingBuffer:g(sGuid, "")
local _,_, sTitle = sNeedInfo:find("<title>(.*)</title>")
local _,_, iNumber = sTitle:find("(%d+)")
local iNumber = tonumber(iNumber)
if not tAllData[iNumber] then
local _,_, sPubDate = sNeedInfo:find("<pubDate>(.*)</pubDate>")
local _,_, sDescription = sNeedInfo:find("<description>(.*)</description>")
local _,_, sData = sDescription:find("<!%[CDATA%[(.*)%]%]")
tAllData[iNumber] = {}
tAllData[iNumber]["sPubDate"] = sPubDate
tAllData[iNumber]["sData"] = sData
iAdded = iAdded + 1
table.insert(tNewNumbers, iNumber)

Но что и как тут заменить, я не знаю :(

Структура страницы(пример одной цитаты):
CODE
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Bash.Org.Ru</title>
<link href="/_inc/css/rss_reader_bash.css" rel="stylesheet" type="text/css" media="all">
</head>
<body><div id="page">
<div class="header">
<img width="300" height="40" alt="bash.org.ru" src="/_inc/img/rss/bash/logo.gif">Bash.Org.Ru - Цитатник Рунета</div>
<div id="quotes">
<div class="q">
<div class="vote">
<a href="http://bash.org.ru/quote/402898">Цитата #402898</a>
, Sat, 21 Mar 2009 11:12:01 +0400</div>
<div>Морские новости: &quot;В Ильичевском порту тепловоз раздавил автомобиль ГАИ, приехавший красть солярку&quot;<br>Вот оно как бывает - тепловоз подкрался незаметно.</div>
</div>
</div>
</div></body>
</html>

Автор: Wariner 22.3.2009, 13:10

не я конечно понимаю что много хочется, но ты предлагаешь под каждого человека переписывать парсинг?

Автор: THE STRELOK 22.3.2009, 13:21

Цитата(Wariner @ 22.3.2009, 14:10) *
не я конечно понимаю что много хочется, но ты предлагаешь под каждого человека переписывать парсинг?

ну да ладно... Обойдусь без цитат... В конце концов вы(модеры) никому ничего не должны...

Автор: Azuma 22.3.2009, 13:38

Wariner
Я чуть не так объяснил и ты не так понял, таблица создается на 100 цитат и если на баше новые добавляются то он вносит их в таблицу. Например база содержала 100 цитат с добавление на баше и внесением их в таблицу стало 109.
У меня вопрос в другом ка сделать чтобы он сразу таблицу создал с 1000 цытат например или больше лазил в .lua и .tbl не нашол функции такой, может подскажеш где исправить это если можно?

Автор: Wariner 22.3.2009, 13:45

не понятен смысл этого. ты хочешь чтоб при имеющихся 100 цитатах место резервировалось на 1000?

Цитата(THE STRELOK @ 22.3.2009, 13:21) *
ну да ладно... Обойдусь без цитат... В конце концов вы(модеры) никому ничего не должны...

ухахахаха. попробуй сделать сам!!! никто и никогда ничего на блюдечке с золотой каёмочкой приносить не будет! Посмотри структуру баша посмотри что делает скрипт а потом сделай для себя. Если будут вопросы обращайся....

Автор: THE STRELOK 22.3.2009, 15:01

Попытался, но не получилось:(

Код
function ParseData(sIncomingBuffer)
    local iAdded = 0
    local tNeedToGsub = {
        ["\t"] = "",
        ["\r"] = "",
        ["\n"] = "",
        ["&lt;"] = "<",
        ["&gt;"] = ">",
        ["&quot;"] = "\"",
        ["&amp;"] = "&",
        ["&minus;"] = "-",
    }
for sWhatNeedToGsub, sToWhat in pairs(tNeedToGsub) do
sIncomingBuffer = sIncomingBuffer:g(sWhatNeedToGsub, sToWhat)
end
local sIncomingBuffer = sIncomingBuffer:g("<br>", "\r\n")
local sNeedInfo = ""
for sNeedInfo in sIncomingBuffer:gmatch("(<div class="q">.-</div>)") do
--local _,_, sGuid = sNeedInfo:find("(<item>.-<guid>.*</guid>)")
--local sIncomingBuffer = sIncomingBuffer:g(sGuid, "")
local _,_, sTitle = sNeedInfo:find("<a>(.*)</a>")
local _,_, iNumber = sTitle:find("(%d+)")
local iNumber = tonumber(iNumber)
if not tAllData[iNumber] then
local _,_, sDescription = sNeedInfo:find("<div>(.*)</div>")
local _,_, sData = sDescription:find("<div>(.*)</div>")
tAllData[iNumber] = {}
tAllData[iNumber]["sData"] = sData
iAdded = iAdded + 1
table.insert(tNewNumbers, iNumber)
        end
    end
    Core.SendToOps("<"..sBot.."> *** Обновление базы закончено! Добавлено "..iAdded.." цитат. Щас сохраним все данные...")
    if iAdded ~= 0 then
        iTimeToSend = iSecondsToSendNew
        SaveToFile(sMainDataTbl, tAllData, "tAllData")
        MakeTblForRandomChoose()
    end
end

Автор: Wariner 22.3.2009, 15:28

Код
function ParseData(sIncomingBuffer)
    local iAdded = 0
    local tNeedToGsub = {
        ["\t"] = "",
        ["\r"] = "",
        ["\n"] = "",
        ["&lt;"] = "<",
        ["&gt;"] = ">",
        ["&quot;"] = "\"",
        ["&amp;"] = "&",
        ["&minus;"] = "-",
    }
    for sWhatNeedToGsub, sToWhat in pairs(tNeedToGsub) do
        sIncomingBuffer = sIncomingBuffer:g(sWhatNeedToGsub, sToWhat)
    end
    local sIncomingBuffer = sIncomingBuffer:g("<br>", "\r\n")
    local sNeedInfo = ""
    for sNeedInfo in sIncomingBuffer:gmatch("(<div class=\"q\">.-</div>)") do
        local _,_, sTitle = sNeedInfo:find("<a href=\"http://bash.org.ru/quote/%d+\">(.*)</a>")
        local _,_, iNumber = sTitle:find("(%d+)")
        local iNumber = tonumber(iNumber)
        if not tAllData[iNumber] then
            --local _,_, sDescription = sNeedInfo:find("<div>(.*)</div>")
            --local _,_, sData = sDescription:find("<div>(.*)</div>")
            local _,_, sData = sNeedInfo:find("<div>(.*)</div>")
            tAllData[iNumber] = {}
            tAllData[iNumber]["sData"] = sData
            iAdded = iAdded + 1
            table.insert(tNewNumbers, iNumber)
        end
    end
    Core.SendToOps("<"..sBot.."> *** Обновление базы закончено! Добавлено "..iAdded.." цитат. Щас сохраним все данные...")
    if iAdded ~= 0 then
        iTimeToSend = iSecondsToSendNew
        SaveToFile(sMainDataTbl, tAllData, "tAllData")
        MakeTblForRandomChoose()
    end
end

Автор: THE STRELOK 22.3.2009, 15:44

Спасибо, цитаты получает, но команда +BASH_show
не работает :(

Автор: Wariner 22.3.2009, 15:50

ошибки?

Автор: THE STRELOK 22.3.2009, 15:59

Код
scripts/BashOrgRuPath/Core.lua:82: attempt to concatenate local 'sData' (a nil value)

Автор: Wariner 22.3.2009, 16:00

82 строчку в студию плюс пример что сохранилось у тебя в таблице(небольшой кусок в пару цитат)

Автор: THE STRELOK 22.3.2009, 16:11

82 строка:

Код
    DoNeedFormat(tAllData[tNumbers[iNumber]]["sData"]).."\r\n"..

пример цитаты из таблицы:
Код
tAllData = {
    [402841] = {
    },
    [402873] = {
    },
}

Автор: Wariner 22.3.2009, 16:16

к этому серваку доступ из инета есть?

Автор: THE STRELOK 22.3.2009, 16:18

Нет, только локальные сети...

Автор: Wariner 22.3.2009, 16:25

Код
function ParseData(sIncomingBuffer)
    local iAdded = 0
    local tNeedToGsub = {
        ["\t"] = "",
        ["\r"] = "",
        ["\n"] = "",
        ["&lt;"] = "<",
        ["&gt;"] = ">",
        ["&quot;"] = "\"",
        ["&amp;"] = "&",
        ["&minus;"] = "-",
    }
    for sWhatNeedToGsub, sToWhat in pairs(tNeedToGsub) do
        sIncomingBuffer = sIncomingBuffer:g(sWhatNeedToGsub, sToWhat)
    end
    local sIncomingBuffer = sIncomingBuffer:g("<br>", "\r\n")
    local sNeedInfo = ""
    for sNeedInfo in sIncomingBuffer:gmatch("(<div class=\"q\">.-</body>)") do
        local _,_, sTitle = sNeedInfo:find("<a href=\"http://bash.org.ru/quote/%d+\">(.*)</a>")
        local _,_, iNumber = sTitle:find("(%d+)")
        local iNumber = tonumber(iNumber)
        if not tAllData[iNumber] then
            --local _,_, sDescription = sNeedInfo:find("<div>(.*)</div>")
            --local _,_, sData = sDescription:find("<div>(.*)</div>")
            local _,_, sData = sNeedInfo:find("<div>(.*)</div>")
            tAllData[iNumber] = {}
            tAllData[iNumber]["sData"] = sData
            iAdded = iAdded + 1
            table.insert(tNewNumbers, iNumber)
        end
    end
    Core.SendToOps("<"..sBot.."> *** Обновление базы закончено! Добавлено "..iAdded.." цитат. Щас сохраним все данные...")
    if iAdded ~= 0 then
        iTimeToSend = iSecondsToSendNew
        SaveToFile(sMainDataTbl, tAllData, "tAllData")
        MakeTblForRandomChoose()
    end
end

Автор: THE STRELOK 22.3.2009, 16:32

Ситуация немного меняется)))
Ошибка:

Код
scripts/BashOrgRuPath/Core.lua:73: attempt to index field '?' (a nil value)

73 строка:
Код
    " [ Цитата #"..tNumbers[iNumber]..", Добавлено "..tAllData[tNumbers[iNumber]]["sPubDate"].." ]"..sNew.."\r\n"..


Пример из таблицы:
Код
tAllData = {
    [402898] = {
        ["sData"] = "Морские новости: \"В Ильичевском порту тепловоз раздавил автомобиль ГАИ, приехавший красть солярку\"\r\
Вот оно как бывает - тепловоз подкрался незаметно.</div></div><div class=\"q\"><div class=\"vote\"><a href=\"http://bash.org.ru/quote/402897\">Цитата #402897</a> , Sat, 21 Mar 2009 10:46:01 +0400</div><div>ххх: Получил служебку. Внизу написано: И.о начальника УСОП. И подпись чья-то.. Думаю может поздно уже отвечать?!</div></div>    },
}

Все цитаты написаны сплошным текстом в sData ...

Автор: Azuma 22.3.2009, 16:42

Цитата(Wariner @ 22.3.2009, 13:45) *
не понятен смысл этого. ты хочешь чтоб при имеющихся 100 цитатах место резервировалось на 1000?

Чтобы в базу закачивалось не 100 цитат при старте скрипта а не менее 1000, а то он их по кругу эту сотню начинает гонять.
Такого не было бы если на баше в сутки не менее 50 или 100 цитат выкладывали но увы.

Автор: Wariner 22.3.2009, 16:45

Код
for sNeedInfo in sIncomingBuffer:gmatch("(<div class=\"q\">.-</div></div>)") do

Автор: THE STRELOK 22.3.2009, 16:57

Теперь таблица вроде правильная:

CODE
tAllData = {
[402841] = {
["sData"] = "Ходила в ЗАГС по делам. Там рядышком 2 двери. Одна в зал регистрации брака, другая к секретарю. Сижу на стуле в этом холле, рядом девушка в красивом вечернем белом платье, с цветами, смирно сидит и ждет кого-то, звонит телефон. Она медленно достает мобилу из сумочки и я слышу следующий разговор:\r\
-Привет, дорогой.\r\
-Да, я в ЗАГСЕ, сижу жду тебя...\r\
-Ты снова не сможешь?... Ну ничего, тогда как-нить в следующий раз, милый.\r\
Затем встает и спокойно уходит... ну, невеста... ну, видимо, не впервой...</div>",
},
[402873] = {
["sData"] = "<Tog> Я дарил ей цветы и называл принцессой\r\
<Strela_SS> Gnum: понимаю. но плачу....и плачу не первый день\r\
<Gnum> Strela_SS: пусть кто то тебя добивается, а не ты кого то\r\
<Tog> ...она не говорила о своих чувствах но я знал ....любит\r\
<Tog> ......я просто подарил ей свое сердце\r\
<Gnum> Strela_SS: это пройдет\r\
<Tog> и жил только ей одной.... я просто был ослеплен любовью\r\
<Tog> ... мы подходили идеально друг для друга\r\
Strela_SS: ага и жди своего принца всю жизнь\r\
<Deleted> Tog: но она оказалась мужиком?\r\
<Tog> ...ох моя любимая .....моя любимая Шестерка жигулей</div>",
},
}

за исключением того, что цитаты не переносятся(не праметра '\n') и в конце каждой цитаты тег </div>

PS: команда +BASH_show попрежнему не работает, ошибка таже:
Код
scripts/BashOrgRuPath/Core.lua:73: attempt to index field '?' (a nil value)

Автор: Wariner 22.3.2009, 20:47

походу надо так

Код
function ParseData(sIncomingBuffer)
    local iAdded = 0
    local tNeedToGsub = {
        ["\t"] = "",
        ["\r"] = "",
        ["\n"] = "",
        ["&lt;"] = "<",
        ["&gt;"] = ">",
        ["&quot;"] = "\"",
        ["&amp;"] = "&",
        ["&minus;"] = "-",
    }
    for sWhatNeedToGsub, sToWhat in pairs(tNeedToGsub) do
        sIncomingBuffer = sIncomingBuffer:g(sWhatNeedToGsub, sToWhat)
    end
    local sIncomingBuffer = sIncomingBuffer:g("<br>", "\r\n")
    local sNeedInfo = ""
    for sNeedInfo in sIncomingBuffer:gmatch("(<div class=\"q\">.-</div></div>)") do
        local _,_, sTitle = sNeedInfo:find("<a href=\"http://bash.org.ru/quote/%d+\">(.*)</a>")
        local _,_, iNumber = sTitle:find("(%d+)")
        local iNumber = tonumber(iNumber)
        if not tAllData[iNumber] then
            --local _,_, sDescription = sNeedInfo:find("<div>(.*)</div>")
            --local _,_, sData = sDescription:find("<div>(.*)</div>")
            local _,_, sData = sNeedInfo:find("<div>(.*)</div>")
            local _,_, sPubDate = sNeedInfo:find("</a>(.*)/div>")
            tAllData[iNumber] = {}
            tAllData[iNumber]["sPubDate"] = sPubDate
            tAllData[iNumber]["sData"] = sData
            iAdded = iAdded + 1
            table.insert(tNewNumbers, iNumber)
        end
    end
    Core.SendToOps("<"..sBot.."> *** Обновление базы закончено! Добавлено "..iAdded.." цитат. Щас сохраним все данные...")
    if iAdded ~= 0 then
        iTimeToSend = iSecondsToSendNew
        SaveToFile(sMainDataTbl, tAllData, "tAllData")
        MakeTblForRandomChoose()
    end
end

Автор: THE STRELOK 22.3.2009, 20:54

Команды заработали, но цитаты выгдядит так)):

Цитата
[22:53:08] <bash.org.ru> [ Bash.Org.Ru - Цитатник Рунета ]
====================================================================================================
=======================
[ Цитата #402809, Добавлено В , Thu, 12 Mar 2009 08:45:02 +0400</div><div>xxx: 8 марта СЃ утра проснулся РѕС‚ С?СѓРјР° РІ РєРѕСЂРёРґРѕСЂРµ Рё РєСЂРёРєР° отца: "Р˜РґРё спать быстро! РЇ тебе сейчас кофе РІ постель принесу!"</div> ] [ new! ]

xxx: 8 марта СЃ утра проснулся РѕС‚ С?СѓРјР° РІ РєРѕСЂРёРґРѕСЂРµ Рё РєСЂРёРєР° отца:
"Р˜РґРё спать быстро! РЇ тебе сейчас кофе РІ постель принесу!"</div>

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

Автор: Wariner 22.3.2009, 20:55

а в таблице что?

Автор: THE STRELOK 22.3.2009, 21:10

Код
tAllData = {
    [402841] = {
        ["sData"] = "Ходила в ЗАГС по делам. Там рядышком 2 двери. Одна в зал регистрации брака, другая к секретарю. Сижу на стуле в этом холле, рядом девушка в красивом вечернем белом платье, с цветами, смирно сидит и ждет кого-то, звонит телефон. Она медленно достает мобилу из сумочки и я слышу следующий разговор:\r\
-Привет, дорогой.\r\
-Да, я в ЗАГСЕ, сижу жду тебя...\r\
-Ты снова не сможешь?... Ну ничего, тогда как-нить в следующий раз, милый.\r\
Затем встает и спокойно уходит... ну, невеста... ну, видимо, не впервой...</div>",
        ["sPubDate"] = " , Sun, 15 Mar 2009 09:12:50 +0400</div><div>Ходила в ЗАГС по делам. Там рядышком 2 двери. Одна в зал регистрации брака, другая к секретарю. Сижу на стуле в этом холле, рядом девушка в красивом вечернем белом платье, с цветами, смирно сидит и ждет кого-то, звонит телефон. Она медленно достает мобилу из сумочки и я слышу следующий разговор:\r\
-Привет, дорогой.\r\
-Да, я в ЗАГСЕ, сижу жду тебя...\r\
-Ты снова не сможешь?... Ну ничего, тогда как-нить в следующий раз, милый.\r\
Затем встает и спокойно уходит... ну, невеста... ну, видимо, не впервой...</div>",
    },
}

Автор: Setuper 22.3.2009, 21:13

дело в кодировках
http://mydc.ru/ipb.html?s=&showtopic=334&view=findpost&p=2276

Автор: Parad0x 28.3.2009, 23:22

Так как скрипт парсит в первый раз при запуске только 100 цитат, то не могли бы пользователи скрипта выложить базу цитатbig_smile.gif На данный момент у меня только 900 цитат если у кого-то больше поделитесьbig_smile.gif

Автор: THE STRELOK 11.4.2009, 11:53

Цитата(Setuper @ 22.3.2009, 22:13) *
дело в кодировках
http://mydc.ru/ipb.html?s=&showtopic=334&view=findpost&p=2276

Что то не совсем понял... :(
Как сделать чтобы исправить косяк в кодировках?
Куда что нужно написать?

Автор: Wariner 11.4.2009, 17:20

надо запихнуть в скрипт функцию Utf8ToAnsi(s) и таблицу utf8_decode
а перед выводом сообщения написать
сообщение = Utf8ToAnsi(сообщение)

Автор: vibe 13.4.2009, 23:13

Парни, а можно сделать чтобы он не тока новые ленты с рсс брал, но и старые цитаты, чтобы кароче все цитаты были big_smile.gif
ибо цитирование на хабе поставил через миунуту чтобы цитаты выводилась, и цитаты повторяются - их просто не хватает big_smile.gif))
вот скрипт на еггдропа, он заточен под такую тему. мож че отудава выдерните ссылки какие нить или еще че big_smile.gif
заранее спасибо
 27_bash.org.ru.rar ( 3.63 килобайт ) : 7

Автор: Wariner 14.4.2009, 7:06

бредовая идея ставить рассылку через минуту! Флуд да и только! А по поводу всех цитат, то хаб тормозить начнёт!!!

Автор: vibe 14.4.2009, 8:07

Цитата(Wariner @ 14.4.2009, 7:06) *
бредовая идея ставить рассылку через минуту! Флуд да и только! А по поводу всех цитат, то хаб тормозить начнёт!!!


Не важно ;) вы сможете сделать это или нет?)

Автор: GRY 9.5.2009, 7:10

А можно сделать так чтоб цитаты из баша выводились в главный чат только в том случае если в чате было очтавлено юзерами скажем N сообщений? А то ночью весь чат цитатами забит. Не айс. Авручную каждыйй вечер настройки менять не вариант...)))) API2 (птока 4.1.1)

Автор: Setuper 9.5.2009, 11:37

Тогда уж надо делать временную зависимость показа, то есть показывать только днём big_smile.gif

Автор: STRELOK 29.5.2009, 9:05

А как сделать так, чтобы при вводе команды +BASH_show выводились сразу все цитаты, а не по одной?
Скажем, пользователь вводит команду +BASH_show, ему выдаёт в ЛС посл. N цитат, кол-во цитат будет задаваться в count = "30"

Автор: Uncle_Dif 23.6.2009, 10:41

Скачал Башорг под API 2, установил.
Мне пишет:[13:31] Синтаксис ...f-Hub\InstaHub-0.23\InstaHub\scripts\Bash.Org.Ru.lua:110: attempt to call global 'SaveToFile' (a nil value)
Нашел строку:SaveToFile(sNewNumbers, tNewNumbers, "tNewNumbers")
она в низу скрипта:function OnExit()
SaveToFile(sNewNumbers, tNewNumbers, "tNewNumbers")
end

function OnTimer()
if tTimesToUpdate[os.date("%H:%M")] and tonumber(os.date("%S")) == 0 then
Core.SendToOps("<"..sBot.."> *** Текущее время: "..os.date("%H:%M:%S")..", пора обновлять базы баша! Максимальное время ожидания - "..iCanWait.." секунд.")
SendRequest()
end
if sType == "Timer" or sType == "TimerPlusMenu" then
iTimes2 = iTimes2 + 1
if iTimes2 >= iTimeToSend then
iTimes2 = 0
Core.SendToAll("<"..sBot..">"..SendQuote())
end
end
collectgarbage("collect")
end
Скрипт не запускается, что здесь поправить, чтобы запустить?

Автор: Wariner 23.6.2009, 13:35

в 0410 птоке несколько иначе прописываются пути. возможно надо так

Код
sScriptsPath = Core.GetPtokaXPath()

Автор: Uncle_Dif 23.6.2009, 16:20

Цитата(Wariner @ 23.6.2009, 14:35) *
в 0410 птоке несколько иначе прописываются пути. возможно надо так
Код
sScriptsPath = Core.GetPtokaXPath()



Пойду апсасну убьюсь. А эту строку где искать ?

Автор: Wariner 23.6.2009, 18:55

ну наверно в скрипте xDDD там есть два возможных варианта неужели так трудно проверить?

Автор: Sekretchik 2.7.2009, 19:07

Спасибо за скрипт. Давно искал и вот нашел. Все прекрасно работает на Ptokax 0.4.1.1 LUA 1.5.3 API 2
Кое что подправил под себя а в остальном все работает отлично. Аффтару Респект!!!
Один Вопрос, при обновлении базы пишет количество 100 - можно увеличить это число?

Автор: Wariner 2.7.2009, 20:14

в скрипте нет ограничения, он берёт все цитаты находящиеся в данный момент на страничке.

Автор: Sekretchik 2.7.2009, 23:19

Сенькас.

Автор: ZZZZZ 8.7.2009, 6:55

вопрос такой: что нужно сделать, чтобы антимат проверял цитаты? а то не айс получается...

Автор: Setuper 8.7.2009, 13:19

Для этого нужно встраивать антимат в скрипт. По другому никак))

Автор: Shurupas 12.7.2009, 18:51

Bash.Org.Ru.lua:103: attempt to concatenate global 'sMsg' (a nil value)
что это? при комментирировании строки 103 ошибку не выдает

как отсылать цитаты в главный чат запрашиваему юзеру

Автор: ghost07 16.3.2010, 14:37

Спасибо за скрипт, вопрос аналогичный. Как выводить несколько цитат?

Автор: FosFriend 12.4.2010, 8:34

Хороший скрип , автору огромное спасибо

Автор: basma4 9.6.2010, 21:05

Народ помогите скачал все как ту сказано !
умну Птоха 0,4,1,2 АПИ2 ОСь Веник 7

скачал Lib 2.0.2, xml c баша стяунл заменил сам думал существующим будет работать
ну не хочет работаь баш, пишет в базе нет пока сообщений, и не выходит доп поля типа скачать базу и т.п.
что я не так делаю? помогите

Автор: Nickolya 9.6.2010, 23:22

Цитата(basma4 @ 9.6.2010, 22:05) *
xml c баша стяунл заменил сам думал существующим будет работать
ну не хочет работаь баш, пишет в базе нет пока сообщений, и не выходит доп поля типа скачать базу и т.п.
что я не так делаю? помогите

Как ты что сам заменил? Скрипт сохраняет страницу на диск для наглядности, в принципе, это лишнее действие, обновляет базы он исключительно с интернета и сам.

Автор: basma4 10.6.2010, 12:19

Цитата(Nickolya @ 10.6.2010, 0:22) *
Как ты что сам заменил? Скрипт сохраняет страницу на диск для наглядности, в принципе, это лишнее действие, обновляет базы он исключительно с интернета и сам.


все заработал ! спс ! каспр епт мешал обновлять базы цитат !
еще вопрос можно ли как то что бы в полчаса в общий чат выкидывал цитаты ?

Автор: Nickolya 10.6.2010, 12:54

Изучай настройки...

Код
iSecondsToSend = 60 * 12                    -- время в скундах для вывода цитат в чат
iSecondsToSendNew = 60 * 5                    -- время в скундах для вывода новых цитат в чат

Автор: derschaman 19.11.2010, 2:45

По-поводу замены мата в цитатах.. (выдрал из скрипта замены мата на слово)

1. Ищем в файле Core.lua строчку:

Код
function ParseData(sIncomingBuffer)


Добавляем ПЕРЕД ней следующее:

Код
    -- Функция обработки цитат на наличие мата
function Ext(sIncomingBuffer, tTable)
    for i in ipairs(tTable) do
        if sIncomingBuffer:match(tTable[i]) then
            return nil
        end
    end
    return true
end

2. ПОСЛЕ этой строчки добавляем:

Код
        -- Cлово для замены мата
    local sReplWord = "бугога"
        -- Маска матных слов
    local tMask = {
        ["[хХxX][yYуУеЕeE][йЙеЕeEёЁяЯюЮиИuUpPрР]"] = {},
        ["[пП][иИеЕeE][дД][оОoO0eEеЕaAаА][pPрР]"] = {},
        ["[пП][иИеЕeE][дД][pPрР][иИ][лЛ]"] = {},
        ["[пП][иИеЕeE][дД][оОoO0eEеЕaAаА][pPрР][ЫыАа]"] = {},
        ["[пП][иИеЕeEёЁuU][зЗ3][дД]"] = {},
        ["[зЗ3][aAаА][eEеЕёЁяЯиИuU][бБ6]"] = {},
        ["[eEеЕёЁяЯ][бБ6][иИ]"] = {
            "дебиан",
        },    
        ["[сСcC][ъЪ][eEеЕёЁяЯ][бБ6][иИ]"] = {},
        ["[eEеЕёЁяЯ][бБ6][aAаА][нНHpPрРтТTлЛшШ]"] = {},
        ["[бБ6][лЛ][яЯ]"] = {},
        ["[Гг][аАоО0][НнHh][дДтТ][Оо0][HhНн]"] = {},
        ["[cCсС][yYуУ][kKкК][aAаА]"] = {},
        ["[СсCc][YyУу][Чч4][AaАа][РрPp][АаЫыУу]"] = {},
        ["[МмMm][yYуУ][дДdD][аАaA]"] = {},
        ["[МмMm][yYуУ][дДdD][иИuU][лЛ]"] = {},
        ["[МмMm][yYуУ][дДdD][OoОо][Зз]"] = {},
    }


3. Ищем строчки:
Код
    for sWhatNeedToGsub, sToWhat in pairs(tNeedToGsub) do
        sIncomingBuffer = sIncomingBuffer:g(sWhatNeedToGsub, sToWhat)
    end


4. Добавляем после них:
Код
    -- Замена мата на слово для замены
        for i,v in pairs(tMask) do    
            if sIncomingBuffer:match(i) and Ext(sIncomingBuffer, v) then
                sIncomingBuffer = sIncomingBuffer:gsub(i, sReplWord)
            end
        end
    -- Конец замены мата


5. Крайне рекомендую также удалить следующие файлы:
Bash.Org.Ru.xml
tAllData.tbl
tNewNumbers.tbl

6. Запускаем скрипт, заново получаем цитаты, и ...вуаля..теперь вместо мата у нас слово для замены big_smile.gif)

P.S. На всякий случай прикрепил свой файл Core.lua

 Core.lua ( 5.82 килобайт ) : 6
 

Автор: MARVELtm 19.11.2010, 11:54

омг , как же баш и без мата! Установи скрипт анекдотов и радуйся!

Автор: Ksan 19.11.2010, 12:05

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

Автор: Tsd 19.11.2010, 12:21

Давно реализовано с антиматом, по запросу через меню не фильтрует. Пример:
[11:21:03] <Bash.org.ru> ВНИМАНИЕ! Возможна ненормативная лексика.
Когда впервые услашал TOKIO HOTEL терялся в догадках - кто поёт, мужик или баба. А когда впервые увидел... неопределенность усилилась.

Автор: derschaman 19.11.2010, 14:58

На вкус и цвет - фломастеры разные... Тут спрашивали как сделать фильтр мата, я подсказал - а нравится / не нравится - личное дело каждого тролля... big_smile.gif))

Цитата
Давно реализовано с антиматом, по запросу через меню не фильтрует. Пример:


А вот найти это "давно реализованное" на mydc как-то не получается big_smile.gif)

Автор: Parad0x 22.11.2010, 22:41

Собственно совсем немного подправил скрипт. Теперь он парсит с ithappens.ru истории
Ничего радикального со скриптом не зделано, скрипт основан полностью на скрипте баша.
Автор скрипта и темы (если это один человек) может впринципе дополнить первый пост этим скриптом, хотя тут ничего радикального нету big_smile.gif

 ithappens.ru_API2.rar ( 4.29 килобайт ) : 25

Автор: derschaman 23.11.2010, 17:41

Цитата(Parad0x @ 22.11.2010, 22:41) *
Собственно совсем немного подправил скрипт. Теперь он парсит с ithappens.ru истории
Ничего радикального со скриптом не зделано, скрипт основан полностью на скрипте баша.
Автор скрипта и темы (если это один человек) может впринципе дополнить первый пост этим скриптом, хотя тут ничего радикального нету big_smile.gif

 ithappens.ru_API2.rar ( 4.29 килобайт ) : 25


Собственно говоря, подправил этот скрипт 2 раза, для ithappens.ru и для zadolba.li - ничего сложного нет, правим имя ленты, имя папки для хранения, команды вызова

Автор: strateg 10.1.2012, 14:22

Добрый день!
Хотелось бы чтобы интервал вывода цитат менялся в зависимости от времени на сервере или через заданые промежутки времени. feel_good.gif
Возможно ли это сделать ?

Автор: strateg 11.1.2012, 9:24

Вот знакомый дописал смену интервала по времени и еще кое какие штуки.

 lua_ptoka_4.1.bashorg.zip ( 33.09 килобайт ) : 24
 

Автор: stone 17.5.2018, 9:09

скрипт не работает ! не обновляет Цитаты Рунета big_smile.gif

выдаёт : *** Ошибка при получении данных (301)!!!

Автор: Ksan 18.5.2018, 2:00

stone, надеюсь вы прочитали мой ответ на вашу жалобу по поводу неработы моего скрипта с цитатами из Баша? А также скрипта с цитатами из Задолбали.. Оба скрипта исправлены и работают. Можете качать.

Автор: Ksan 19.5.2018, 2:23

А ошибка в скрипте, скорее всего, из-за того же, из-за чего перестали работать мои 2 скрипта вышеобозначенные - сайты Баш и Задолбали перешли на защищённый режим (https). Я у себя изменил и скрипты пашут, думаю, аналогично можно сделать и в этом скрипте.