Lightfeed Extractor: Библиотека на TypeScript для надежного извлечения веб-данных с использованием LLM

Lightfeed Extractor — это библиотека на TypeScript, созданная для надёжного извлечения веб-данных с использованием LLM и автоматизации браузера Playwright. Она решает типичные проблемы в конвейерах веб-скрапинга, где традиционные CSS-селекторы ломаются при изменении макета сайтов, а подходы с использованием чистых LLM сталкиваются с шумом в HTML, некорректным выводом JSON и проблемами с URL.
Ключевые возможности
- Преобразование HTML в markdown, готовый для LLM: Извлекает основное содержимое, удаляя навигационные панели, заголовки, подвалы и мусор для отслеживания. Включает опциональное включение изображений и очистку URL.
- Извлечение с помощью LLM и схем Zod: Работает с любой LLM, совместимой с LangChain (OpenAI, Gemini, Claude, Ollama), и использует схемы Zod для типобезопасного извлечения с реальной валидацией.
- Восстановление JSON: Очищает и восстанавливает частичные данные из некорректного вывода LLM вместо полного сбоя. Если 19 из 20 продуктов обрабатываются правильно, вы получаете эти 19.
- Встроенная автоматизация браузера: Использует Playwright с поддержкой локальных, бессерверных или удалённых браузеров. Включает патчи против ботов для надёжного веб-скрапинга.
- Интеграция с AI-навигацией в браузере: Совмещается с @lightfeed/browser-agent для навигации по страницам на основе ИИ перед извлечением.
- Обработка URL: Управляет относительными URL, удаляет недействительные, исправляет экранированные ссылки в markdown и очищает параметры отслеживания.
Установка и использование
Установите через npm:
npm install @lightfeed/extractor
Затем установите предпочитаемого провайдера LLM:
# OpenAI
npm install @langchain/openai
# Google Gemini
npm install @langchain/google-genai
# Anthropic
npm install @langchain/anthropic
# Ollama (локальные модели)
npm install @langchain/ollama
Пример использования для извлечения товаров из электронной коммерции:
import { ChatGoogleGenerativeAI } from "@langchain/google-genai";
import { extract, ContentFormat, Browser } from "@lightfeed/extractor";
import { z } from "zod";
// Определите схему для извлечения каталога товаров
const productCatalogSchema = z.object({
products: z.array(
z.object({
name: z.string().describe("Название или заголовок товара"),
brand: z.string().optional().describe("Название бренда"),
price: z.number().describe("Текущая цена"),
originalPrice: z.number().optional().describe("Исходная цена, если действует скидка"),
rating: z.number().optional().describe("Рейтинг товара из 5"),
reviewCount: z.number().optional().describe("Количество отзывов"),
productUrl: z.string().url().describe("Ссылка на страницу с деталями товара"),
imageUrl: z.string().url().optional().describe("URL изображения товара")
})
).describe("Список товаров хлеба и выпечки")
});
// Создайте экземпляр браузера
const browser = new Browser({
type: "local", // также поддерживает бессерверный и удалённый браузер
headless: false
});
Библиотека лицензирована под Apache 2.0 и используется в продакшене в Lightfeed для конвейеров данных, которые скрапят веб-сайты и извлекают структурированные данные. Она предназначена для разработчиков, создающих рабочие процессы веб-скрапинга, которые хотят избежать написания повторяющегося шаблонного кода для очистки HTML, преобразования в markdown, вызовов LLM, парсинга JSON, восстановления ошибок и валидации схем.
📖 Read the full source: HN LLM Tools
👀 Смотрите также

Плагин памяти агента OpenClaw: Постоянный контекст между сеансами
Разработчик создал плагин слоя памяти для OpenClaw, который перед каждым ходом внедряет релевантный контекст из прошлых разговоров и сохраняет новые факты и события после каждого хода, решая проблему забывания агентом всего между сессиями.

Клод Опус 4.6: Модель для устойчивых инженерных задач
Claude Opus 4.6 продолжает акцентироваться на долгосрочных проектах, поддерживая многодневные задачи с такими функциями, как ультрадолгий контекст и адаптивное мышление.

Исследование Clawe: Открытая система координации многопользовательских агентов
Clawe — это инструмент с открытым исходным кодом, который обеспечивает эффективную координацию многопользовательских агентов и предлагает такие функции, как планирование, управление задачами и уведомления в реальном времени.

Qwen3.5-35B-A3B-UD-Q6_K_XL Протестировано в производственных рабочих процессах разработки
Разработчик протестировал модель Qwen3.5-35B-A3B-UD-Q6_K_XL на нескольких реальных клиентских проектах, достигнув стабильной производительности с показателями 1504pp2048 и 47.71 tg256, а также скоростью генерации токенов 80tps на одной видеокарте.