PtokaX 0.4.2.0 или новее Lua 5.1 LuaSocket и LuaSec или утилита curl
Описание: Скрипт отображает описание для ссылок, отправляемых юзерами в чат. Описание берется из тега <title> страницы, на которую указывает ссылка.
Данный скрипт должен находиться в списке ниже скриптов, блокирующих сообщения юзеров. Если описание ссылок добавляется в сообщение юзера (ReportType = 2, см. настройки), и на Вашем хабе есть скрипты, модифицирующих сообщения юзеров (антикапс, "лечащий"антимат, и т.д), этот скрипт нужно поставить выше них.
alex82, возможно, стоило бы учесть и кириллические ссылки.
Автор: alex82 29.8.2016, 0:08
Ksan, работают же.
Цитата
[00:07:05] <alex82> http://mydc.ru/r/?http:// (Индусский код — Lurkmore)
Автор: Ksan 29.8.2016, 3:16
alex82, точно! Это я просто невнимательно глянул на одну строку:
Код
local ext = link:lower():match("%.([a-z])+$")
и решил, что расчёт только на латиницу.
Автор: Tsd 29.8.2016, 18:54
Протестил курлом на дебиане - всё пашет отлично. Ссылки на гр. изображения не обрабатывает, но это и понятно, там нет <title>
Автор: Tsd 16.9.2016, 17:49
Немного изменил скрипт, не было обработки ссылок типа http://mydc.ru/r/?https://youtu.be/fbMwC-z1L6s
CODE
function GetTitle(url) local data, http_status ------------------------------- костыль youtu.be if url:find("^https://youtu.be/") then url = url:gsub("youtu.be/", "www.youtube.com/watch?v=") end -------------------------------- if bUseCurl then
История изменений: urlinfo_px_mod: Добавлено: костыль youtu.be Tsd 16.09.2016 urlinfo_px_mod1: Изменено: 1. Таблица с костылями перенесена в конфиг. 2. Если с первого раза не удалось получить описание ссылки - скрипт пытается получить описание ресурса с главной страницы.
Немного изменил скрипт, не было обработки ссылок типа http://mydc.ru/r/?https://youtu.be/fbMwC-z1L6s
а код где?
Автор: Tsd 17.9.2016, 14:57
Цитата(dimetro @ 16.9.2016, 23:38)
а код где?
В моём посте выше.
Автор: Karumo 17.9.2016, 16:24
Это все конечно прикольно, но поюзав скрипт заметил что многие ссылки он не обрабатывает, даже догадываюсь почему. Например там где идет редирект, и только во втором HTML есть поле TITLE... ну вы поняли
Автор: dimetro 17.9.2016, 21:12
Цитата(Karumo @ 17.9.2016, 16:24)
Это все конечно прикольно, но поюзав скрипт заметил что многие ссылки он не обрабатывает, даже догадываюсь почему. Например там где идет редирект, и только во втором HTML есть поле TITLE... ну вы поняли
ну ты хочешь прям идеально все, даже антиреклама\антимат и прочее, прочее и то не 100% идеальна, как не вылизуй код) Норм вплоне скрипт, ты еше Скажи - плохо что прямые ссылки на картинко, не добавляет к ним описание
Автор: Karumo 18.9.2016, 13:27
Цитата(dimetro @ 17.9.2016, 21:12)
ну ты хочешь прям идеально все, даже антиреклама\антимат и прочее, прочее и то не 100% идеальна, как не вылизуй код) Норм вплоне скрипт, ты еше Скажи - плохо что прямые ссылки на картинко, не добавляет к ним описание
Откуда такое понимание, я не хочу всего идеального ) а вот редерект было неплохо проверить и обойти - скрипт бы еще лучше стал.
Автор: Tsd 18.9.2016, 15:09
Вышла http://mydc.ru/topic5826.html?view=findpost&p=47315 версия мода.
Автор: dimetro 18.9.2016, 23:08
Цитата(Tsd @ 18.9.2016, 15:09)
Вышла http://mydc.ru/topic5826.html?view=findpost&p=47315 версия мода.
классно,но иногда не в тему совсем: 23:07:43 <Cow-zkb> http://mydc.ru/r/?http://telegraf.com.ua/files/2015/10/prodoljenie-vyi-naydete-na-nashem-sayte-yaustalcom-00_601x556.jpg (Новости Украины. ТЕЛЕГРАФ - последние новости Украины и мира за последний час)
Вернул на 1ю версию.
Автор: Ksan 19.9.2016, 2:57
dimetro, если по ссылке только картинка (в конце ссылки имеется одно из картиночных расширений - bmp, jpg, png и т.д.), остаётся 3 варианта: - либо как у Tsd (получить титул главной страницы), - либо вырезать из ссылки кусок текста перед расширением картинки, начиная от последнего слэша (для вашей картинки получится "prodoljenie-vyi-naydete-na-nashem-sayte-yaustalcom-00_601x556", хотя тут ещё можно было бы избавиться от размеров картинки), - либо просто отметить, что это картинка (ибо во многих случаях картинки не имеют осмысленного названия, частенько встречается что-нибудь типа "sdfy09fvhsvif8.jpg").
Автор: dimetro 19.9.2016, 16:15
Цитата(Ksan @ 19.9.2016, 2:57)
dimetro, если по ссылке только картинка (в конце ссылки имеется одно из картиночных расширений - bmp, jpg, png и т.д.), остаётся 3 варианта: - либо как у Tsd (получить титул главной страницы), - либо вырезать из ссылки кусок текста перед расширением картинки, начиная от последнего слэша (для вашей картинки получится "prodoljenie-vyi-naydete-na-nashem-sayte-yaustalcom-00_601x556", хотя тут ещё можно было бы избавиться от размеров картинки), - либо просто отметить, что это картинка (ибо во многих случаях картинки не имеют осмысленного названия, частенько встречается что-нибудь типа "sdfy09fvhsvif8.jpg").
Да, понятно что картинка-прямая ссылка. Другое дело.. что описание с титла страницы к ней совсем не подходящее, лучше сделать и правда к - bmp, jpg, png и т.д. добавлять просто описание - (Картинка)ну или - (Картинка взята с адрес-сайта.ru), а не брать из названия главной.