← Разработка

Каталог сайтов на Sugata

3 минуты, 20 секунд
Каталог сайтов на Sugata

Мне всегда нравилось работать с ссылками.  Как только появился Интернет мы делали каталоги сайтов, потом поисковые системы. Индексация, словари, бесконечные подсчеты показателей, фильтры.

Ссылки важны. На них строится Интернет. В любых проектах мы стараемся их использовать. На Sugata задача немного проще. Это не поисковая система. Но есть ряд вопросов, на которые мы хотели бы получить ответ.

  • Какие ссылки размещает пользователь?
  • К какому сайту тяготит он?
  • Он размещает ссылки своего сайта?
  • Он указал свой сайт явно в профиле?
  • Какого качество сайта? 
  • Какова энтропия ссылки и т.д.

Мы собираем много данных по ссылкам и это обычно закрытые данные. На Toxu.ru, например, они позволяют бороться со спамом.

И тут пришла идея. А если обвернуть данные в оболочку и показать их участникам. Только наверное не так, как это делает Meneame. Точнее то, что он делает — правильно, но насколько это понятно?

Это публичный график изменения кармы ссылки в конкретной публикации.


А это подсчет кармы для прыжка в видимую область (центральная страница).

Подсчет: 19:50 UTC
Целей: 30, интервал: 2880с, разница: 2399с, спад: 1.0250520833333
Статистика за 2 дня для пространства: 0.13730769230769
Статистика за 2 дня для актуальности: 0.14722962680883
Коэффициент кармы для пространства: 1.1581390966172
Коэффициент кармы на сегодня: 1.0800910806784
Среднее количество кармы за ссылку: 10.192552673817, прошлая карма.
Прогноз: 10.21, пиковый: 10.39
Текущая минимальная карма: 9, абсолютная минимальная карма: 8.7, анализ от 12.

Не думаю, что это хорошая идея. Зачем эта информация размещенная в таком виде? 

Под «обвернуть» в видимую оболочку я понимаю сделать обычный интерфейс, который можно будет использовать. 

InstantCMS — конструктор, т.е. мы можем легко создавать поля и связывать их. А наполнить их, мы можем, как угодно.

В общем, не долго думаю, я взял свой один из предыдущих проектов и просто перенес некоторый видимый функционал сюда.

Получилось вот что: 

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

Другими словами мы просто взяли функционал ссылки, с которыми мы работаем, не особо много добавили для наглядности (красоты) и вывели это.

Собственно сам раздел: https://sugata.ru/web

Не особо много работы, лишь несколько часов ушло на то, чтобы сделать такой набросок.

Все ссылки проверяются на «отклик» (чтобы не было битых, различные редиректы...) и есть привязка ссылок к пространствам, т.е появляется возможность администраторам пространств добавлять ссылки  (сейчас эта возможность временно отключена).

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

Сайт может содержать много ссылок на разные страницы, например: Reddit, вес, карма ссылок сливается, обрабатывается с общим, основным, видимым в каталоге доменом.

[hide] Проверка: этот тест не должен быть виден без авторизации [/hide]

+7
23:25
22
Evg Evg
23:38 (ред)
+4

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

Комментарий удален
23:57 (ред)
+6

Передача «веса» с некоторых страниц — уместно. 

14:07 (ред)
+2

Самое сложное в любом каталоге, это сделать связи, например, категорий с @Наука

Мы будем делать это тут? Унаследование дочерних ссылок и др.

14:12 (ред)
+2

Посмотрел. Есть такая возможно. Но обычно это делается в полноценных каталогов, тут не было такой задачи. Вертикальные и горизонтальные связи не только между ссылками, но и между всеми полями. На локале сделал что-то подобное этому:

Да, ну и цвета там чуток подправил. Мы же используем полностью независимый шаблон для завершенных, самодостаточных разделов. Фон там поменял и цветовую гамму.

16:56
+3

Расширил категории:

Теперь можно устраивать горизонтальные связи между категориями и выводить несколько дополнительных свойств категорий. Посмотреть это дело тут. Связи могут быть обоюдными (обратными) и прямыми. Ну прям, как в путном каталоге. 

19:39 (ред)
+3

Центральную страницу необходимо переделать: убрать пагинацию, и вывести выбранные ресурсы или сайты дня.

20:37 (ред)
+3

Теперь эта страница использует свой шаблон. Как будем выводить туда и что?

21:44 (ред)
+2

+ последние 5 ссылок добавленных в каталог.

12:32
+3

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

17:26
+4

Да, это будет сделано обязательно. И видимо нам необходимо поменять некоторую логику там. Узнал движок чуток лучше и можно некоторые вещи сделать по другому, проще.

11:09
+1

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

11:18
+1

Сайты прибывают. А мы что будем использовать для поиска?

11:39 (ред)
+1

Я бы сказал Nutch еще лет 5 назад, теперь не знаю. DS — возможно, все же С не Java. Или я попробую поставить свой. Пока не думал об этом. Для меня самое простое — поиск, т.к. самое знакомое. 8 числа точно будем знать.

02:06
+3

Поскольку у нас есть ссылки, каталог, то видимо должен быть и поиск по нему. Хороший поиск, а еще лучше, чтобы искало и совсем чуток по этому сайту: nutch, aspseek… то, с чем я занимался ранее несколько лет не совсем подходят сегодня. Первый извратили, а второй морально устарел. Хм… надо что-то придумать.

02:08
+2

Nutch вроде с Solr идет, но я не занимался ими. Java выше моего понимания. )

02:17 (ред)
+3

Поставил Nutch, поставил Solr. Связал. Оказывается там надо учитывать версию. И Nuch2 очень отличается от 1. ИМХО, не в лучшую сторону. Интерфейс красивый, но черт побери — это поиск, а не фотошоп. А там в этом интерфейсе, куча всего. Не надо мне это. Если мне надо API, или еще что-то я сделаю это руками. А там, черт ногу сломит. Ну скажем так, после 10 лет, это какой-то Ворпресс стал. И я ради теста делал на слабом серваке, конечно Java жрет дофига. Aspseek был отличным вариантом. На одном процессоре у меня ранее висело 12.000.000 страниц. Четко работал. Но сейчас gcc новый, ядра новые. Он собирается криво. Точнее вообще не собирается. День убил заставил его работать. Правил код, чуть не спятил. И индекс, он не стопками собирает. Nutch в плане построение индекса норм, но опять, не хочется возвращаться к старью и брать 1 версию. Ладно. Завтра буду. Еще одни поставил для теста. Натравил на 10 сайтов с глубиной 1. Интерфейс все равно править надо. Пользовательскую часть сделаю сегодня, а далее с индексом что-то решим. Связи надо сделать. У нас есть — категория, иконки, скриншоты. Их надо туда вытянуть, при условии, что id будут совпадать добавленных url. Надо делать синхронизацию баз, SQL и NO… в общем. Поковыряюсь, но не долго. Нет на это время. 

Чтобы не забыть. Надо добавить ссылку на rss ленту в каталог, если она есть.

17:44
+2

Добавил. Но я с aspseek застрял. C++ не мое 

21:09
+3

Там надо переписать. Поиск делался в 12 году. Сейчас гляну. Но он конфигурироваться должен. make не пройдет. Опять библиотека какая нибудь устарела в сборке. 

22:30
+2

Вывел последнюю (?) корневую категорию Товары и услуги. Она будет большой, нам надо сразу сменить шаблон для нее. 

16:51
+2

Вот, добавлена статья: Как заработать на фрилансе. В статье перечислены несколько сайтов, которые к счастью есть в каталоге. Теперь необходимо подумать о связи: как только появилась статья с ссылкой, на сайт, которые есть в каталоге, они должны быть связаны. Под этим, я подразумеваю, что на детальной странице сайта, должна существовать возможность показать эту самую статью. И другой вариант, появляется ссылка, но сайта нет в каталоге. Персонал должен знать об этом. Надо подумать, как лучше это реализовать. 

22:13
+2

Парсер я накидаю на днях и покажу.

20:16
+1

Перевел каталог на новый дизайн. Часть css убрал, минус 1 файл. Но нужно посмотреть, что еще можно удалить.

Загрузка...