и еще вот хотелось бы что бы между выводяшися тем были строки раздиления... Пример:
Цитата
============================================================ title: С наступающим 2010 годом link: http://mydc.ru/r/?http://gamepolis.ru/archive/1155-s-nastupayushhim-2010-godom.html ============================================================ title: Рейтинг незаконно скачиваемых игр возглавила Modern Warfare 2 link: http://mydc.ru/r/?http://gamepolis.ru/1153-rejting-nezakonno-skachivaemyx-igr-vozglavila.html ============================================================ title: Разрушители мифов в Modern Warfare 2 link: http://mydc.ru/r/?http://gamepolis.ru/archive/1152-razrushiteli-mifov-v-modern-warfare-2.html ============================================================ title: Quake Live — лучший способ провести праздники link: http://mydc.ru/r/?http://gamepolis.ru/1151-quake-live-luchshij-sposob-provesti-prazdniki.html ============================================================
Спасибо! а что по поводу разделения? можно сделать???
Цитата
============================================================ title: С наступающим 2010 годом link: http://mydc.ru/r/?http://gamepolis.ru/archive/1155-s-nastupa...2010-godom.html ============================================================ title: Рейтинг незаконно скачиваемых игр возглавила Modern Warfare 2 link: http://mydc.ru/r/?http://gamepolis.ru/1153-rejting-nezakonno...vozglavila.html ============================================================ title: Разрушители мифов в Modern Warfare 2 link: http://mydc.ru/r/?http://gamepolis.ru/archive/1152-razrushit...-warfare-2.html ============================================================ title: Quake Live — лучший способ провести праздники link: http://mydc.ru/r/?http://gamepolis.ru/1151-quake-live-luchsh...-prazdniki.html ============================================================
и хотелось бы убрать Обработано за: 0.03 секунды.
Автор: Хабыч 11.1.2010, 10:38
Цитата
и хотелось бы убрать Обработано за: 0.03 секунды.
найди это и закоментироуй. перед этой строкой поставь --
Автор: Nix-mpkgVirus 12.1.2010, 1:51
Цитата(Хабыч @ 11.1.2010, 12:38)
найди это и закоментироуй. перед этой строкой поставь --
если закоментировать то вылетает 137.64 Kb.
Автор: Хабыч 12.1.2010, 2:07
хм... ну хотя думаю оно не очень мешает.
Автор: Nix-mpkgVirus 13.1.2010, 5:39
А что по поводу раздиления....? Nickolya поможешь?
Автор: Nix-mpkgVirus 20.1.2010, 9:39
Ну так что поможет кто?
Автор: Saymon 20.1.2010, 11:46
Цитата
поводу раздиления
В плане?
Автор: CraZy 20.1.2010, 17:07
Цитата(Saymon @ 20.1.2010, 12:46)
В плане?
============================================================ title: С наступающим 2010 годом link: http://mydc.ru/r/?http://gamepolis.ru/archive/1155-s-nastupa...2010-godom.html ============================================================ title: Рейтинг незаконно скачиваемых игр возглавила Modern Warfare 2 link: http://mydc.ru/r/?http://gamepolis.ru/1153-rejting-nezakonno...vozglavila.html ============================================================ title: Разрушители мифов в Modern Warfare 2 link: http://mydc.ru/r/?http://gamepolis.ru/archive/1152-razrushit...-warfare-2.html ============================================================ title: Quake Live — лучший способ провести праздники link: http://mydc.ru/r/?http://gamepolis.ru/1151-quake-live-luchsh...-prazdniki.html ============================================================
Автор: brauzer84 20.1.2010, 20:01
Птока выдаёт ошибку 0.4.1.1\scripts\Gamepolis.lua:195: attempt to index local 'hFile' (a nil value)
Как испрвить? Знает кто?
Автор: Nickolya 20.1.2010, 20:33
Так сложно залезть в скрипт и посмотреть что да как? Строки о памяти убираются тут
Код
sMsg = tostring(cnt).." новых тем с: "..Feed.."\n\n".. reply.."".. "\t\t\tОбработано за: "..time
заменяем на
Код
sMsg = tostring(cnt).." новых тем с: "..Feed.."\n\n".. reply
А чтобы сделать разделители меняем
Код
if next(New) then reply,cnt = "",0 for key,val in ipairs(New) do local bool = true for i,v in ipairs(Old) do if v[2] == val[2] then bool = false break end end if bool then cnt = cnt + 1 for i,v in ipairs(val) do reply = reply.."\t"..v.."\n" end reply = reply.."\n" end end end
на
Код
if next(New) then reply,cnt = "\t============================================================\n",0 for key,val in ipairs(New) do local bool = true for i,v in ipairs(Old) do if v[2] == val[2] then bool = false break end end if bool then cnt = cnt + 1 for i,v in ipairs(val) do reply = reply.."\t"..v.."\n" end reply = reply.."\t============================================================\n" end end end
И скажите, много изменений? Это сложно?
Автор: STRELOK 27.3.2010, 16:51
Решил малость поменять скрипт под свои вкусы: FeedWatch.lua ( 3.31 килобайт )
: 19
Т.к. скрипт у меня считывает информацию только с ITHappens и Bash.Org.Ru, но вот проблема: этот скрипт отображает только 1 последнюю цитату, как сделать так, чтобы он отображал всё кол-во цитат, а точнее то кол-во, которое будет указано, например: 20 с самого верха ленты, т.е. не с последней цитаты, а с самой первой? Уже битый час сижу и не могу никак переделать парсер :(
local socket = require"socket" assert(socket,"Failed to load socket extension. Check files.") local http = require("socket.http") assert(http,"Failed to load http module. Check files.") local Asc = {},0,""
OnStartup = function() if Bot == "" then Bot = SetMan.GetString(21) end if loadfile(File) then dofile(File) else Old = {} SaveFile(File,Old,"Old") end end
function UserConnected(tUser) if tProfile[tUser.iProfile] == 1 then Core.SendToUser(tUser,"$UserCommand 1 3 Онлайн сервисы\\RSS Новости\\Bash.Org.ru$<%[mynick]> !rssfactorial|") end end OpConnected = UserConnected RegConnected = UserConnected
Стало так:
Раскрывающийся текст
-- "Botname" ["" = hub bot] local Bot = "ServiceBot" -- Save recent feeds to this file for script/hub restarts local File = "FeedWatch2.dat" -- Set your feed's URL local Feed = "http://lenta.ru/rss/" -- Set the update interval [in minutes] local Refresh = 60 -- Enable capture of these RSS fields local Fields = { ["<title>"] = true, ["<description>"] = true, ["<link>"] = true, ["<author>"] = false, ["<category>"] = false, ["<comments>"] = false, ["<pubDate>"] = true, ["<guid>"] = false, }
--Replace these strings in feed XML [--Comment unwanted replacements] local Rep = { ["%<%!%[CDATA%["] = "", ["%]%]%>"] = "", ["%[code *%]"] = "", ["<img [^>]*>"] = "", ["<p>"] = "", ["<a href[^\w]+"] = "", ["<br />"] = " ", ["\t"] = " ", ["\r\n"] = "", ["["] = string.char(91), ["]"] = string.char(93), [" [ ]+"] = " ", ["<div class=\"codeheader\">"] = "", } -- Truncate RSS fields to this width. local MaxWidth = 8500 -- Remove all HTML <tags> in feed fields? true/false local TagFilter = true -- Always send new feed to pm? true/false local OnlyPm = true -- Append new feeds to MOTD? [Motd restored at script exit] local DoMotd = false -- "Preset FeedNick" [Nick new feeds are sent from] / false = Use feed title for FeedNick local FeedNick = false
local socket = require"socket" assert(socket,"Failed to load socket extension. Check files.") local http = require("socket.http") assert(http,"Failed to load http module. Check files.") local Asc = {},0,""
OnStartup = function() if Bot == "" then Bot = SetMan.GetString(21) end if loadfile(File) then dofile(File) else Old = {} SaveFile(File,Old,"Old") end end
function UserConnected(tUser) if tProfile[tUser.iProfile] == 1 then Core.SendToUser(tUser,"$UserCommand 1 3 Онлайн сервисы\\RSS Новости\\Lenta.ru$<%[mynick]> !rssfactorial|") end end OpConnected = UserConnected RegConnected = UserConnected
Я догадываюсь что дело в этой строке Core.SendToUser(tUser,"$UserCommand 1 3 Онлайн сервисы\\RSS Новости\\Lenta.ru$<%[mynick]> !rssfactorial|")
Но я незнаю где взять другую и что менять... ============================= Всё, разобрался
Не думал что всё так просто... оказывается вызов к !rssfactorial идёт 2 раза... 2ой не заметил сначала. Поэтому и кидал с БАШа. добавил 2 в конце в обоих местах - заработало =)
Автор: Aлзим 14.12.2010, 2:23
Как сделать, чтобы ссылка отображалась правильно?
Сейчас это так:
Цитата
============================================================ Заголовок: Какова сила удара, когда один футболист толкает другого? Ссылка: http://mydc.ru/r/?http://umnik.org.ru/4392/%D0%BA%D0%B0%D0%BA%D0%BE%D0%B2%D0%B0-%D1%81%D0%B8%D0%BB%D0%B0-%D1%83%D0%B4%D0%B0%D1%80%D0%B0-%D0%BA%D0%BE%D0%B3%D0%B4%D0%B0-%D0%BE%D0%B4%D0%B8%D0%BD-%D1%84%D1%83%D1%82%D0%B1%D0%BE%D0%BB%D0%B8%D1%81%D1%82-%D1%82%D0%BE%D0%BB%D0%BA%D0%B0%D0%B5%D1%82-%D0%B4%D1%80%D1%83%D0%B3%D0%BE%D0%B3%D0%BE Категория: Спорт ============================================================
А хотелось бы так:
Цитата
============================================================ Заголовок: Какова сила удара, когда один футболист толкает другого? Ссылка: http://mydc.ru/r/?http://umnik.org.ru/4392/какова-сила-удара-когда-один-футболист-толкает-другого Категория: Спорт ============================================================
Автор: Enyby 14.12.2010, 18:00
http://mydc.ru/r/?http://ru.wikipedia.org/wiki/Url Раздел "Кодирование URL". Потом либо паттернами либо куча gsub.
Автор: Nickolya 14.12.2010, 21:12
Цитата
url.unescape(content)
Removes the URL escaping content coding from a string.
Content is the string to be decoded.
The function returns the decoded string.
подробнее читайте в документации по luasocket...
Автор: Aлзим 14.12.2010, 21:31
Цитата(Nickolya @ 14.12.2010, 21:12)
подробнее читайте в документации по luasocket...
А по проще можно?! Мне бы какой-нибудь код или функцию вставить в скрипт, чтобы переводил на кириллицу...
Автор: Nickolya 4.1.2011, 17:39
Итак, если еще актуально, вот решение "чтобы ссылка отображалась правильно":
После
Код
local http = require("socket.http") assert(http,"Failed to load http module. Check files.")
добавляем
Код
local url = require("socket.url") -- loads the URL module assert(url,"Failed to load url module. Check files.")
Затем после
Код
field = field:lower():gsub("[<>]","")
добавляем
Код
if field == "link" then val = utf8towinru(url.unescape(val)) end
Либо, если у вас стандартная версия (без русификации), и строка, после которой надо добавлять код, выглядит как
Код
field = field:lower():gsub("[<>]","")..":"
то надо сделать не
Код
if field == "link" then
а
Код
if field == "link:" then
Результат будет примерно таким:
Код
Заголовок: Ответ на вопрос: Верите ли Вы, что знак зодиака по гороскопу предопределяет характер и судьбу человека ? Ссылка: http://svio.net/120/верите-зодиака-гороскопу-предопределяет-характер-человека#a4894
Заголовок: Неужели дети могут быть помехой? Ссылка: http://svio.net/4885/неужели-дети-могут-быть-помехой
Заголовок: Редактирование комментария: Вы согласны с Жириновским, что уголовные дела по поводу беспорядков на Манежной надо прекратить? Ссылка: http://svio.net/4816/согласны-жириновским-уголовные-беспорядков-манежной-прекратить#c4874
Автор: Aлзим 4.1.2011, 18:43
Цитата(Nickolya @ 4.1.2011, 17:39)
Итак, если еще актуально, вот решение "чтобы ссылка отображалась правильно":
Актуально. Сделал как Вы написали и всё заработало. Большое спасибо . Вид ссылок стал намного приятнее. Я знал, что у Вас руки золотые. С наступившим новым годом и с наступающим Рождеством!:)