LLM Scraperとは?
LLM Scraperは、LLMs(Large Language Models)を使用して、任意のウェブページを構造化データに変換するためのTypeScriptライブラリです。
使い方
import { chromium } from 'playwright'
import LLMScraper from 'llm-scraper'
import OpenAI from 'openai'
# ブラウザを起動
const browser = await chromium.launch()
# LLMプロバイダーを初期化
const llm = new OpenAI()
# 新しいLLMScraperを作成
const scraper = new LLMScraper(browser, llm)
# スキーマを定義
const schema = z.object({
top: z.array(
z.object({
title: z.string(),
points: z.number(),
by: z.string(),
commentsURL: z.string(),
})
).length(5)
.describe('Top 5 stories on Hacker News'),
})
# スクレイピングするURL
const urls = ['https://news.ycombinator.com']
# スクレイパーを実行
const pages = await scraper.run(urls, {
model: 'gpt-4-turbo',
schema,
mode: 'html',
closeOnFinish: true,
})
# 結果を出力
for await (const page of pages) {
console.log(page.data)
}
活用例・どんなところに応用できる?
- ニュースサイトから記事のタイトルやポイント、著者名を抽出
- eコマースサイトから製品情報の収集
- ブログサイトから投稿のメタデータを取得
原理・定義
LLM Scraperは、Playwrightを使用してウェブページをクロールし、LLMsを利用してページ内容を構造化データに変換します。データの抽出は、Zodで定義されたスキーマに基づいて行われます。
コメント