К содержимому
NEOBRIDGE INSIGHTПо вопросамinfo@neobridge.kz
⌕
Технические модули

PanSou: многоканальный поиск ссылок с фоновым дополнением результатов

PanSou — HTTP API поиска ссылок на облачные диски по Telegram-каналам и подключаемым источникам. Результаты объединяются и группируются по типу диска.

·15 источников·По описаниям проекта ↗
ОБСУДИТЬ И ПОДЕЛИТЬСЯ

Хорошая идея становится полезнее в разговоре.

01
КЛЮЧЕВЫЕ СВЕДЕНИЯ

Паспорт проекта

По первоисточникам
Тип
Технические модули
Задача
Сократить ожидание многоканального поиска и объединить ресурсы разрозненных источников в одном ответе.
Для кого
Разработчики интерфейсов к поисковому API и разработчики подключаемых источников; самостоятельные операторы агрегатора.
Технологии
Go / Docker / API
Что потребуется
Доступ к нужным внешним источникам, конфигурация включённых плагинов и для отдельных источников авторизованная сессия.
Основание
15 первоисточников
02
СУТЬ

За 30 секунд

01 / Зачем

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

02 / Как

Параллельно опрашивает источники, извлекает ссылки, удаляет дубликаты, ранжирует и возвращает результаты. Отдельный endpoint проверяет доступность заданных ссылок и может вернуть неопределённый результат.

03 / Результат

Результаты с идентификатором, каналом/источником, датой, заголовком, содержимым и массивом ссылок; сгруппированные ссылки и статусы проверки ok/bad/locked/unsupported/uncertain.

03
ПОСЛЕДОВАТЕЛЬНОСТЬ

Как это работает

01

На входе

Поисковая строка kw и список каналов; для проверки ссылок — адрес и при необходимости код извлечения. Некоторые плагины используют пользовательские сессии.

02

Механизм

Параллельно опрашивает источники, извлекает ссылки, удаляет дубликаты, ранжирует и возвращает результаты. Отдельный endpoint проверяет доступность заданных ссылок и может вернуть неопределённый результат.

03

Результат

Результаты с идентификатором, каналом/источником, датой, заголовком, содержимым и массивом ссылок; сгруппированные ссылки и статусы проверки ok/bad/locked/unsupported/uncertain.

04
ПОДРОБНОСТИ

Что важно понять

01

Техническое устройство

Go/Gin и асинхронные плагины сочетаются с разделённым кэшем памяти/диска. Исправление от 26 сентября описывает 4-секундное синхронное окно и вычисляемый по волнам deadline до PLUGIN_TIMEOUT=10s. Дедупликация основана на UniqueID, один из ведущих факторов ранжирования — класс плагина.

02

Для чего создано

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

03

Для кого

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

04

Сценарии использования

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

05

Идея решения

Быстро отдать доступную часть результатов, продолжить медленные источники в фоне и обновить кеш для последующих запросов; отделить расширяемые источники от общей сортировки и API.

06

Какую задачу описывает источник

Синхронный поиск замедляется из-за отдельных источников; в описанном исправлении слишком малый conc раньше не давал большинству задач завершиться вовремя.

05
ГОТОВНОСТЬ К ПРОВЕРКЕ

Что известно из описания

Полнота описанияЗапуск не проверялся
МеханизмОписано
ТребованияОписано
ОграниченияОписано

Что потребуется

  • Доступ к нужным внешним источникам, конфигурация включённых плагинов и для отдельных источников авторизованная сессия.
  • Доступны Docker frontend+backend и API-only.
  • README пишет Go 1.18+, но более поздняя датированная спецификация сообщает go.mod/Dockerfile Go 1.25.0; требование нужно уточнять по выбранному snapshot кода.

Что учитывать

  • Авторизация API по умолчанию выключена.
  • QQ и Weibo плагины прямо описывают открытое хранение Cookie.
  • Ссылки могут быть недоступны, требовать пароль или давать uncertain; отдельные сайты требуют логин и ограничивают поиск одной страницей.
  • В описании запрещено использование для прибыли, тогда как README заявляет MIT; это расхождение оставлено нерешённым.
06
СМОТРИМ ГЛУБЖЕ

Комментарий NeoBridge

Общая справка

  • API и плагин — API — программный интерфейс; плагин — подключаемое расширение для отдельного источника или функции.
  • Кэш — Сохранённые результаты, используемые повторно без полного обращения к исходным источникам.
  • Cookie — Данные браузерной сессии, которые могут давать доступ к учётной записи; открытое хранение требует отдельной защиты.
  • Deadline и параллелизм — Предельное время завершения набора задач и число задач, выполняемых одновременно.
  • API — Правила, по которым программы обращаются друг к другу: например, запрашивают данные или передают команду.
  • Контейнер — Изолированный процесс с нужными ему файлами и зависимостями. Это помогает запускать приложение в подготовленном окружении.

Что стоит уточнить

  • Как согласовать MIT в README и запрет коммерческого использования в описании? Сведения не установлены сохранёнными описаниями или не проверены выполнением.
  • Какие источники разрешены и какие сессии допустимо подключить? Сведения не установлены сохранёнными описаниями или не проверены выполнением.
  • Какие ветка/версия определяют реальные timeout, Go и plugin defaults? Сведения не установлены сохранёнными описаниями или не проверены выполнением.

Основания и справочные материалы

API ↗Контейнер ↗
↗
ОСНОВАНИЯ

Из первоисточников

15 ссылок

Редакционный обзор NeoBridge Insight по материалам источников ниже. Права на исходные тексты, код и изображения принадлежат их правообладателям. Условия использования указаны в первоисточниках.

Независимое тестирование проекта не проводилось.

← Вернуться к проектам Продолжить исследование ↗