어떤 URL에서도 깨끗한 Markdown 추출: PageBolt /extract 엔드포인트
Source: Dev.to
번역을 진행하려면 번역하고자 하는 본문 텍스트를 제공해 주시겠어요?
코드 블록이나 URL은 그대로 유지하고, 본문만 한국어로 번역해 드리겠습니다.
원시 HTML의 문제
AI 에이전트가 웹 페이지를 읽을 때, 원시 HTML을 LLM에 제공하면 스크립트, 광고, 네비게이션 메뉴, 푸터 및 기타 보일러플레이트를 통과해야 합니다.
일반적인 분류:
- 스크립트 및 스타일시트 – 모델에 의해 무시됨
- 네비게이션 메뉴 – 무시됨
- 광고 및 트래킹 픽셀 – 무시됨
- ≈10 KB의 보일러플레이트 – 토큰 낭비
- ≈2 KB의 실제 콘텐츠 – 필요한 내용
에이전트가 50 KB의 HTML을 처리해 2 KB의 유용한 텍스트를 추출한다면, 토큰의 약 **96 %**가 낭비되어 비용과 지연 시간이 증가합니다.
PageBolt의 /extract 엔드포인트 소개
PageBolt은 단일 목적 API를 제공합니다:
- URL을 입력받습니다.
- 주요 기사/콘텐츠를 추출합니다.
- 결과를 깔끔한 Markdown(옵션 메타데이터 포함)으로 반환합니다.
응답은 어떤 LLM에도 바로 전달할 수 있도록 준비되어 있습니다.
간단한 JavaScript 예제
// fetch clean Markdown from a URL
const response = await fetch('https://api.pagebolt.com/v1/extract', {
method: 'POST',
headers: {
'Authorization': `Bearer YOUR_API_KEY`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
url: 'https://example.com/blog/article'
})
});
const data = await response.json();
console.log(data.markdown);
// => "# Article Title\n\nArticle content in clean Markdown..."
LLM (Anthropic Claude)와 /extract 사용하기
const Anthropic = require('@anthropic-ai/sdk');
const client = new Anthropic();
async function summarizeResearchPaper(paperUrl) {
// 1️⃣ Extract the paper as Markdown
const extractResponse = await fetch('https://api.pagebolt.com/v1/extract', {
method: 'POST',
headers: {
'Authorization': `Bearer ${process.env.PAGEBOLT_API_KEY}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
url: paperUrl,
format: 'markdown'
})
});
const { markdown, title, author } = await extractResponse.json();
// 2️⃣ Pass clean Markdown to Claude
const message = await client.messages.create({
model: 'claude-opus-4-5',
max_tokens: 1024,
messages: [
{
role: 'user',
content: `Summarize this research paper in 3 bullet points:
Title: ${title}
Author: ${author}
Content:
${markdown}`
}
]
});
return message.content[0].text;
}
// Example usage
const summary = await summarizeResearchPaper('https://arxiv.org/pdf/2406.12345');
console.log(summary);
토큰 효율성 향상
| 시나리오 | 입력 토큰 | 출력 토큰 | 대략적인 비용* |
|---|---|---|---|
| 원시 HTML (추출 없음) | 50,000 | 500 | ~$1.50 |
정리된 마크다운 (/extract 사용) | 2,000 | 500 | ~$0.06 |
*비용은 일반적인 LLM 가격을 기준으로 한 것이며, 실제 요금은 다를 수 있습니다.
정리된 마크다운을 사용하면 토큰 사용량이 ≈25× 감소하여 비용을 절감하고 응답 속도가 빨라집니다. 또한 마크다운은 텍스트 구조에 더 자연스러운 형식이므로 LLM 이해도가 향상됩니다.
일반적인 사용 사례
- Research aggregator – 수십 개의 논문을 추출하고 요약합니다.
- Competitive intelligence – 경쟁사 웹 페이지를 가져와 분석합니다.
- Documentation agent – API 문서를 수집하고 개발자 질문에 답변합니다.
- News digest – 일일 기사들을 수집하고 브리핑을 생성합니다.
- Content curator – 블로그 게시물을 가져와 분류합니다.
- Customer support – 헬프센터 기사들을 가져와 지원 봇을 교육합니다.
샘플 API 응답
{
"markdown": "# Article Title\n\nArticle content...",
"title": "Article Title",
"author": "Author Name",
"published_date": "2026-03-18",
"word_count": 1200,
"estimated_reading_time_minutes": 5
}
JSON에는 Markdown 본문과 표시하거나 저장할 수 있는 유용한 메타데이터가 포함되어 있습니다.
가격
| 플랜 | 월 가격 | 포함된 추출 수 |
|---|---|---|
| Starter | $29 | 500 |
| Growth | $79 | 5,000 |
| Scale | $199 | 50,000 |
시작하기
- API 키를 얻으세요 pagebolt.dev/pricing에서.
- POST 요청을 보냅니다
/extract에 대상 URL(및 선택적 매개변수)을 포함하여. - 반환된 Markdown을 AI 에이전트에서 사용하세요—HTML 파싱이 필요 없습니다.
월 100회 추출을 무료로 시작하세요(신용카드 필요 없음).
이제 AI 에이전트는 URL에서 깨끗하고 LLM‑친화적인 콘텐츠로 직접 연결되는 파이프라인을 갖게 됩니다. 잡음 없이 필요한 데이터만 제공합니다.