ipb21.1.tcl, RSS-агрегатор |
ipb21.1.tcl, RSS-агрегатор |
ASTRALOBJECT |
Jun 10 2008, 08:58 PM
Post
#21
|
Посетитель Group: Members Posts: 1 Joined: 10-June 08 Member No.: 230 |
Как можно исправить?
CODE Обновленный топик ?????? ?????? ? ?????? (http://ek-burg.my1.ru/forum/35-356-1) В скрипте: set ipb21(ver) "1.2" # формат перекодировки set ipb21(encoding_to) cp1251 ENCODINGFROM=utf-8 TYPE=rss Бот еггдроп *18 В конфиге: encoding system iso8859-1 RSS: http://ek-burg.my1.ru/forum/0-0-0-37 CODE <?xml version="1.0" encoding="UTF-8" ?> <rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/"> |
Kreon |
Jun 11 2008, 01:06 AM
Post
#22
|
Developer Group: Root Admin Posts: 396 Joined: -- From: Внешние пределы Member No.: 2 |
Установить патченного бота + encoding system cp1251.
-------------------- Не понял сам - не дай понять другому
|
kns |
Jul 30 2008, 01:26 AM
Post
#23
|
Посетитель Group: Members Posts: 7 Joined: 27-June 08 Member No.: 236 |
Поколдовал тут немного над скриптом. Кое-что добавил, кое-что убрал, кое-что изменил.
Теперь для каждого фида можно настраивать частоту обновления. По умолчанию (ipb21(delay)) время равно 5 минутам. Т.к. все настройки источников храню в каталоге data/feeds/, то сделал автоматическую загрузку оттуда. Это - файлы с расширением .bas. Содержимое то же, что и в примере. Добавлено 2 префикса для команд. ipb21(pubprefix) и ipb21(msgprefix). Для команды ручного обновления (!cache) используется второй. Флаг изменен на pubrss, т.е. теперь нужно включать скрипт на определенном канале. Скрипт я использую только для обычных RSS. Проверил на своих ботах - все работает. Ах да, тестил я на патченных ботах. Поэтому, за работу на обычных не ручаюсь. Правда из того, что может повлиять, изменил, разве что, следующее: код на 572 строке CODE if {[string match *[string tolower $keyword]* [string tolower $id]]} { на CODE if {[string match -nocase "*${keyword}*" $id]} { Особо ничего трогать не рискнул. :)) Если хватит упорства, постараюсь переделать скрипт под http.tcl. upd (01.08.2008/01:50): немного изменил код. :) upd (03.08.2008/03:36): немного фиксов и изменений. Attached File(s) ipb21.1.tcl ( 25.39k ) Number of downloads: 710 |
Alvor |
Jul 31 2008, 08:33 AM
Post
#24
|
Участник Group: Members Posts: 30 Joined: 9-March 07 Member No.: 76 |
Все это хорошо, но при использовании типа rss21 возникает боянная проблема с <![CDATA[ ... ]]> (см. 1ю страницу топика), а при использовании rss вместо автора ставится название rss-потока (например у меня - "Территория общения"). Форум версии 2.3.4
|
kns |
Jul 31 2008, 03:25 PM
Post
#25
|
Посетитель Group: Members Posts: 7 Joined: 27-June 08 Member No.: 236 |
Думаю, как и с rss-разделом, проблема решится добавлением одного регекспа.
|
Alvor |
Jul 31 2008, 04:43 PM
Post
#26
|
Участник Group: Members Posts: 30 Joined: 9-March 07 Member No.: 76 |
вроде бы есть в коде в разделе "ipb21" код regexp -nocase -- {<!\[CDATA\[(.+?)\]\]>} $desc tmp desc, однако все равно...
|
kns |
Jul 31 2008, 07:39 PM
Post
#27
|
Посетитель Group: Members Posts: 7 Joined: 27-June 08 Member No.: 236 |
А точно ли это нужно в секции desc?
|
kns |
Jul 31 2008, 07:53 PM
Post
#28
|
Посетитель Group: Members Posts: 7 Joined: 27-June 08 Member No.: 236 |
В любом случае, можно просто поправить процедуру ::egglib::unhtml.
-------------------- |
kns |
Aug 1 2008, 12:54 AM
Post
#29
|
Посетитель Group: Members Posts: 7 Joined: 27-June 08 Member No.: 236 |
Поменял обычное деление на целочисленное в процедуре проверки промежутка между запросами источника.
Поменял логику (?) автоматической загрузки источников. Поправил некоторые мелочи. Attached File(s) ipb21.1.tcl ( 24.55k ) Number of downloads: 693 -------------------- |
kns |
Aug 3 2008, 02:40 AM
Post
#30
|
Посетитель Group: Members Posts: 7 Joined: 27-June 08 Member No.: 236 |
Немного фиксов и изменений.
Возможно была ошибка, когда не выводились новости по таймеру. Теперь точно нет. В ближайшее время планирую избавиться от регсубов (и стрингмапов) типа CODE regsub -all {\\} $arg {\\\\} arg и добавить выборку по категориям (удобно для новостных фидов). Attached File(s) ipb21.1.tcl ( 25.39k ) Number of downloads: 699 |
kns |
Oct 19 2008, 05:09 AM
Post
#31
|
Посетитель Group: Members Posts: 7 Joined: 27-June 08 Member No.: 236 |
Хм. Переделал скрипт под http.tcl, кое-что поправил, кое-что изменил. Сделал все буквально несколько минут назад, так что особо потестить не получилось. Понятно, что выкладывать такое рано, но у меня нет ни времени, ни особого желания гонять на ошибки, а тут всяко больше тестеров...
Поэтому, если кто хочет попробовать, отпишитесь, прилеплю скриптец. -------------------- |
Kein |
Mar 24 2009, 08:45 PM
Post
#32
|
Посетитель Group: Members Posts: 6 Joined: 25-December 07 Member No.: 164 |
Чем RSS-synd не устраивает?
|
Kreon |
Mar 24 2009, 09:16 PM
Post
#33
|
Developer Group: Root Admin Posts: 396 Joined: -- From: Внешние пределы Member No.: 2 |
Чем RSS-synd не устраивает? Наверное он чего-то не умел на тот момент, либо вообще. -------------------- Не понял сам - не дай понять другому
|
Lo-Fi Version | Time is now: 13th May 2024 - 09:11 AM |