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
👀 Смотрите также

Келет: Автоматизированный анализ первопричин для ИИ-агентов
Kelet — это сервис, который автоматически анализирует сбои в работе AI-агентов в продакшене, группируя трассировки и сигналы для выявления коренных причин и предложения исправлений. Интегрируется через Python/TypeScript SDK или установочный скилл и в настоящее время бесплатен в период бета-тестирования.

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

Фреймворк с открытым исходным кодом для постоянной памяти ИИ-агентов с локальным хранением и графовым поиском.
Разработчик создаёт фреймворк с открытым исходным кодом для постоянной памяти ИИ-агентов, который хранит данные локально в виде файлов Markdown, использует вики-ссылки в качестве рёбер графа и реализует Git для контроля версий. Система включает четырёхсигнальное извлечение и графовое забывание на основе когнитивной науки ACT-R.

Claude Code теперь поддерживает 240+ моделей через шлюз NVIDIA NIM, включая Nemotron-3 120B для агентного кодирования
Claude Code может переключаться во время сеанса на более чем 240 моделей NVIDIA NIM с помощью команды /model. Вариант Nemotron-3 Super 120B с режимом мышления показывает отличные результаты при рефакторинге нескольких файлов и агентных задачах.