(Edit Fields) 노드를 찾아 위에서 만든 Manual trigger 노드와 연결합니다.
이 노드는 과거 버전에서
셋
(Set) 노드라고 불렸던 아주 강력한 데이터 변환 도구입니다.
Edit Fields 노드 추가
설정 창을 열고 설정할 필드(Fields to Set) 옵션에 우리가 필요한 속성들을 추가해줍니다.
이렇게 설정하면 복잡했던 원본 데이터에서 제목(title)과 링크(link) 그리고 발행일(pubDate) 속성만 깔끔하게 남고 불필요한 정보는 모두 삭제됩니다.
value 항목은 그대로 $json.title, $json.link, $json.pubDate로 지정해 주시면 됩니다.
좌측의 필드를 드래그앤 드롭하여 연결하면 편하게 설정할 수 있습니다.
// 배열 서랍장에 담긴 모든 뉴스 기사를 하나씩 꺼내어 반복해서 검사합니다.for (const item of $input.all()) { // 제목 데이터가 비어있지 않다면 정규표현식을 사용해 정리 작업을 시작합니다. if (item.json.title) { // 불필요한 에이치티엠엘(HTML) 태그를 모두 지워버리는 강력한 정규표현식 규칙입니다. let cleanTitle = item.json.title.replace(/<[^>]*>?/gm, ''); // 문자열의 앞뒤에 남은 쓸데없는 여백 공간을 말끔히 잘라냅니다. item.json.title = cleanTitle.trim(); }}// 청소가 끝난 깔끔한 데이터를 다음 노드로 무사히 전달합니다.return $input.all();
오늘은 흩어져 있던 복잡한 제이슨 데이터를 모아 배열 알고리즘으로 안전하게 처리하고 정규표현식을 이용해 불필요한 불순물을 걸러내는 과정을 실습해 보았습니다.
처음에는 데이터 가공 규칙이 조금 낯설고 까다롭게 느껴지실 수 있지만 원리만 잘 이해하면 코딩 없이도 자유자재로 데이터를 주무를 수 있게 됩니다.
다음 4편에서는 이렇게 예쁘게 정제된 하나의 텍스트 메시지를 텔레그램과 슬랙 봇을 통해 우리의 스마트폰으로 직접 전송해 보는 재미있는 메신저 연동 과정을 진행해 보겠습니다.