콘텐츠로 이동

데이터와 스토리지

Guida의 데이터 API는 추출한 정보를 워크스페이스 안에 남길 때도, 외부 스토리지로 보낼 때도 사용할 수 있습니다.

워크스페이스 저장소는 스크립트에서 사용할 수 있는 로컬 영구 저장소입니다.

메서드설명
g.store.put키와 함께 값을 저장합니다
g.store.get키로 값을 가져옵니다
g.store.search저장된 데이터를 검색합니다
g.store.delete값을 삭제합니다
g.store.put("pages", "example", {
url: await g.page.getUrl(),
});

큐는 URL이나 레코드를 여러 탭·여러 워커에서 처리하기 위한 작업 목록입니다.

메서드설명
g.queue.enqueue큐에 항목을 추가합니다
g.queue.dequeue처리를 위해 항목을 checkout합니다
g.queue.commitcheckout한 항목을 완료 처리합니다
g.queue.abortcheckout한 항목을 실패 또는 재시도로 되돌립니다
g.queue.count큐 개수를 가져옵니다

commitabort에는 큐 이름이 아니라 checkout ID를 전달합니다.

const item = g.queue.dequeue("urls");
if (item) {
try {
await g.nav.navigateToUrl(item.data.url);
await g.dom.waitForDomStable();
g.queue.commit(item.id);
} catch (e) {
g.queue.abort(item.id, e.message);
}
}

워크스페이스 안의 검색 인덱스에 추출 결과나 메모를 등록할 수 있습니다.

메서드설명
g.search.index문서를 인덱싱합니다
g.search.query전체 텍스트 검색을 실행합니다
g.search.delete인덱스에서 삭제합니다

Guida는 워크스페이스 안의 로컬 데이터뿐 아니라 외부 스토리지에도 쓸 수 있습니다.

네임스페이스용도
g.postgres.*PostgreSQL 쿼리와 업데이트
g.mongodb.*MongoDB 컬렉션 조작
g.s3.*S3 호환 오브젝트 스토리지
g.elasticsearch.*Elasticsearch 등록과 검색

연결 정보는 인증 정보에 저장하고, 필요할 때만 스크립트에서 가져오는 것이 기본입니다. 자세한 내용은 데이터베이스 통합을 참조하세요.