ArticleEric Ciarla·2026년 7월 7일·0

Introducing /interact — Scrape and interact with a web page

Quick Summary

Firecrawl의 /interact는 스크레이프한 웹페이지 세션을 그대로 살아 있는 브라우저로 전환해 클릭, 입력, 이동, 동적 데이터 추출을 수행하게 하는 새 엔드포인트다.

Introducing /interact — Scrape and interact with a web page 관련 대표 이미지

🖼️ 인포그래픽

Introducing /interact — Scrape and interact with a web page 내용을 설명하는 본문 이미지

🖼️ 4컷 인포그래픽

Introducing /interact — Scrape and interact with a web page 내용을 설명하는 본문 이미지

💡 한 줄 요약

Firecrawl의 /interact는 스크레이프한 웹페이지 세션을 그대로 살아 있는 브라우저로 전환해 클릭, 입력, 이동, 동적 데이터 추출을 수행하게 하는 새 엔드포인트다.

📌 핵심 요약

  • Firecrawl은 2026년 3월 25일 /interact를 공개하며, 기존 스크레이프 결과에서 멈추지 않고 같은 브라우저 세션 안에서 후속 행동을 수행할 수 있게 했다고 설명한다.
  • /interact의 핵심 문제의식은 검색 폼, 로그인, 더 보기 버튼, 필터 드롭다운처럼 실제 웹 데이터가 사용자 행동 뒤에 숨어 있는 경우가 많다는 점이다.
  • 사용 흐름은 POST /v2/scrape로 scrapeId를 받고, POST /v2/scrape/{scrapeId}/interact로 프롬프트나 코드를 실행한 뒤, DELETE /v2/scrape/{scrapeId}/interact로 세션을 종료하는 방식이다.
  • 행동 방식은 자연어 프롬프트와 코드 실행으로 나뉘며, 자연어는 단일하고 명확한 작업 지시를 처리하고, 코드는 Node.js, Python, Bash 및 Playwright 접근을 통해 더 정밀한 제어를 제공한다.
  • 응답에는 liveViewUrl과 interactiveLiveViewUrl이 포함되어 브라우저 실행을 모니터링하거나 사람이 직접 개입할 수 있으며, named profile을 쓰면 쿠키와 localStorage 등 로그인 상태도 스크레이프 간에 유지할 수 있다.

🧩 주요 포인트

  1. Firecrawl은 2026년 3월 25일 /interact를 공개하며, 기존 스크레이프 결과에서 멈추지 않고 같은 브라우저 세션 안에서 후속 행동을 수행할 수 있게 했다고 설명한다.
  2. /interact의 핵심 문제의식은 검색 폼, 로그인, 더 보기 버튼, 필터 드롭다운처럼 실제 웹 데이터가 사용자 행동 뒤에 숨어 있는 경우가 많다는 점이다.
  3. 사용 흐름은 POST /v2/scrape로 scrapeId를 받고, POST /v2/scrape/{scrapeId}/interact로 프롬프트나 코드를 실행한 뒤, DELETE /v2/scrape/{scrapeId}/interact로 세션을 종료하는 방식이다.
  4. 행동 방식은 자연어 프롬프트와 코드 실행으로 나뉘며, 자연어는 단일하고 명확한 작업 지시를 처리하고, 코드는 Node.js, Python, Bash 및 Playwright 접근을 통해 더 정밀한 제어를 제공한다.
  5. 응답에는 liveViewUrl과 interactiveLiveViewUrl이 포함되어 브라우저 실행을 모니터링하거나 사람이 직접 개입할 수 있으며, named profile을 쓰면 쿠키와 localStorage 등 로그인 상태도 스크레이프 간에 유지할 수 있다.

🧠 상세 정리

1. 출시 배경과 기존 스크레이핑의 한계

글은 Firecrawl이 /interact라는 새 엔드포인트를 출시했다는 발표로 시작한다. 기존 Firecrawl은 URL에서 깨끗한 데이터를 가져오는 데 초점이 있었지만, 페이지가 상호작용 이후에 보여주는 데이터는 접근하기 어려웠다고 설명한다. 원문은 검색 폼, 로그인, 더 보기 버튼, 필터 드롭다운처럼 실제로 중요한 웹 데이터가 사용자의 행동 뒤에 있는 경우가 많다는 문제를 제기한다. 따라서 /interact는 단순히 페이지를 읽는 기능이 아니라, 스크레이프한 페이지에 머무른 채 다음 행동을 이어갈 수 있게 하는 기능으로 소개된다.

2. /interact의 기본 개념과 작업 흐름

/interact는 스크레이프 세션을 살아 있는 브라우저 세션으로 바꾸어, 해당 페이지 안에서 버튼 클릭, 폼 입력, 페이지 이동, 동적 데이터 추출을 수행하게 한다. 기본 흐름은 세 단계로 정리된다. 먼저 POST /v2/scrape로 페이지를 스크레이프하고 scrapeId와 콘텐츠를 받는다. 다음으로 POST /v2/scrape/{scrapeId}/interact를 호출해 프롬프트나 코드로 행동을 실행한다. 마지막에는 DELETE /v2/scrape/{scrapeId}/interact로 세션을 종료하며, 세션은 기본적으로 최대 10분 동안 유지되고 5분의 비활성 타임아웃이 적용된다.

3. 자연어 프롬프트를 통한 페이지 조작

첫 번째 사용 방식은 자연어 프롬프트다. 사용자는 코드 없이 평문 영어로 무엇을 할지 설명하면 되고, 예시는 iPhone 16 Pro Max를 검색하거나 첫 번째 결과를 클릭해 가격을 알려 달라는 형태로 제시된다. 원문은 각 프롬프트가 하나의 명확한 작업이어야 한다고 강조한다. Firecrawl은 지시에 따라 요소를 찾고, 클릭하고, 입력하고, 결과가 나타날 때까지 기다리는 세부 동작을 처리한다. 이 방식은 브라우저 조작 자체보다 원하는 결과를 설명하는 데 집중하게 해 준다.

4. 코드 실행과 Playwright 기반 정밀 제어

두 번째 방식은 코드를 직접 전달하는 것이다. Firecrawl CLI를 통해 Playwright 코드를 실행할 수 있으며, Node.js, Python, Bash가 지원된다고 설명한다. 원문 예시는 다음 페이지 버튼을 클릭하고, 네트워크가 안정될 때까지 기다린 뒤, 페이지 제목과 기사 본문 텍스트를 추출해 JSON 문자열로 반환하는 흐름을 보여 준다. page 객체는 이미 라이브 브라우저 세션에 연결되어 있어 별도 설정이 필요 없다고 제시된다. 이 방식은 자연어보다 더 세밀한 제어가 필요한 자동화나 반복 추출에 적합한 기능으로 설명된다.

5. 라이브 뷰와 사람 개입형 모니터링

모든 /interact 응답에는 두 종류의 브라우저 스트림 URL이 포함된다. liveViewUrl은 읽기 전용 스트림으로, 실행 중인 브라우저를 모니터링하거나 대시보드에 임베드하는 데 유용하다고 설명한다. interactiveLiveViewUrl은 사람이 직접 브라우저를 조작할 수 있는 완전한 인터랙티브 스트림이다. 원문은 이를 통해 자동화된 스크레이핑과 사람의 검토를 결합한 도구를 쉽게 만들 수 있다고 말한다. 즉, 브라우저가 무엇을 하고 있는지 실시간으로 관찰하고 필요하면 사람이 이어받을 수 있는 구조가 제공된다.

6. 상태 유지, 활용 사례, 비용과 구분점

글은 named profile을 사용하면 쿠키, localStorage, 로그인 세션 같은 브라우저 상태를 스크레이프 간에 저장할 수 있다고 설명한다. 예시에서는 로그인 페이지를 스크레이프한 뒤 /interact로 로그인하고 세션을 종료하면, 같은 profile로 대시보드를 스크레이프할 때 이미 로그인된 상태를 사용할 수 있다. 활용 사례로는 페이지네이션 결과 탐색, 폼 제출과 필터 적용, 라이브 페이지 모니터링, 검색·필터·클릭·추출을 잇는 다단계 워크플로 자동화가 제시된다. FAQ에서는 /interact가 세션 분 단위로 2크레딧이 들고 초 단위로 비례 과금되며, 최초 스크레이프는 별도로 표준 요금이 적용된다고 설명한다. 또한 /interact는 기존 스크레이프 세션에 붙어 동작하는 반면, 브라우저 샌드박스는 스크레이프 없이 독립적으로 실행되는 브라우저 환경이라는 차이도 명확히 한다.

🧾 핵심 주장 / 시사점

  • /interact의 핵심 가치는 정적 URL 수집에서 끝나지 않고, 사용자의 실제 행동 뒤에 나타나는 동적 콘텐츠까지 같은 세션에서 추출하도록 만든 데 있다.
  • 자연어 프롬프트와 코드 실행을 모두 제공하기 때문에, 간단한 작업은 지시문으로 처리하고 정밀한 자동화는 Playwright 코드로 제어하는 이중 접근이 가능하다.
  • liveViewUrl, interactiveLiveViewUrl, named profile은 자동 스크레이핑을 실시간 관찰, 사람 개입, 로그인 상태 유지가 필요한 반복 작업으로 확장하는 기반 기능으로 제시된다.

✅ 액션 아이템

  • /interact는 scrapeId 수신 후 상호작용 실행 및 세션 종료의 호출 흐름을 기준으로 적용 절차를 정리한다.
  • 검색 폼·로그인·더보기·필터처럼 동작 뒤 데이터가 드러나는 구간을 대상으로 자연어와 코드 실행 경로의 처리 범위를 구분한다.
  • liveViewUrl과 interactiveLiveViewUrl을 함께 수집해 실행 관찰을 확보하고, named profile로 쿠키·localStorage 유지 여부를 반영한다.

❓ 열린 질문

  • 어떤 작업은 자연어로, 어떤 작업은 코드 실행으로 처리해야 하는지를 어떤 기준으로 가를 것인가?
  • 코드 실행 시 Node.js, Python, Bash, Playwright 조합을 어떤 기준으로 선택해야 하는가?
  • 세션 종료 DELETE 호출이 누락되거나 실패할 때 재시도·복구 정책은 어떤 방식으로 설계할 것인가?

관련 문서

공통 태그와 주제 흐름을 기준으로 같이 보면 좋은 문서를 이어서 제안합니다.