안녕하세요 여러분
최근에 저는 온갖 종류의 데이터 분석에 푹 빠졌습니다.
부업을 찾다가 다양한 옵션을 탐색하다가 우연히 디지털 제품의 세계를 발견했습니다. Gumroad, Ko-fi 등의 플랫폼이 이 시장을 장악하고 있습니다.
하지만 시작부터 제품이 수백 가지라는 장애물에 부딪혔습니다.
그럼 어떤 걸 팔아야 할까요?
다양한 기사와 플랫폼을 조사한 결과, 충분한 정보를 바탕으로 결정을 내리기에는 확실한 데이터가 충분하지 않다는 것을 깨달았습니다.
이로 인해 가장 큰 디지털 제품 마켓플레이스 중 하나인 Gumroad에서 트렌드를 추적하기 시작했습니다.
공개적으로 사용 가능한 Gumroad API에 대한 기본 API 요청을 수행하는 간단한 JavaScript 스크립트로 시작했습니다. 브라우저의 네트워킹 탭에서 이러한 요청을 쉽게 확인할 수 있습니다.
https://gumroad.com/products/search?&tags[]=vrchat&from=10
좋은 시작이었습니다. 저는 가장 인기 있는 10개의 태그를 추적하고 매일 데이터를 가져오기로 결정했습니다.
내가 사용한 기술 스택:
잘됐어요. 며칠 연속으로 데이터를 수집했는데, 더 확장할 만큼 흥미로웠다. 저도 X에서 커뮤니티의 지지를 받았기에 다음 단계로 나아가기로 했습니다.
가장 인기 있는 태그를 아는 것만으로는 충분하지 않다는 것을 깨달았습니다. 진정한 잠재력은 성장하는 태그를 식별하는 데 있습니다.
다음 반복에서는 가장 인기 있는 틈새 시장에서 하위 태그를 수집하고 이런 방식으로 5,000개 이상의 태그를 수집했습니다.
이로 인해 매일 20,000행이 넘는 데이터가 생성되므로 스토리지 솔루션이 필요했습니다.
MongoDB Atlas에서 무료 클러스터를 호스팅하는 것이 여전히 가능하고 MongoDB는 JavaScript와 잘 결합되므로 이를 스토리지 옵션으로 선택했습니다. 이제 데이터가 저장되어 다양한 분석을 실행할 수 있습니다.
또 다른 과제는 데이터 수집에 소요되는 시간이었습니다.
처음에는 5시간이 걸렸습니다. 그때 프록시에 대해 배웠습니다. 데이터를 병렬로 처리하기 위해 여러 대의 프록시 서버를 설정한 후 수집 시간이 5시간에서 단 30분으로 단축되었습니다.
모든 스크립트를 수동으로 실행하고 있었기 때문에 프로세스를 자동화하기로 결정했습니다.
Hetzner의 원격 서버에 소스 코드를 호스팅하고 crontab을 통해 크론 작업을 설정했습니다.
0 18 * * * /usr/bin/node index.js collect-data 0 21 * * * /usr/bin/node index.js collect-totals
첫 번째 작업은 데이터를 수집하고, 두 번째 작업은 요약을 위해 데이터를 집계합니다. 중복을 제거하고 전날 대비 증가율을 계산합니다.
const [mode = 'collect-data'] = process.argv.slice(2); if (mode === 'collect-data') { return collectData(); } if (mode === 'collect-totals') { return collectTotals(); }
이 프로젝트를 위한 간단한 UI를 만들어 공개적으로 공유하기로 결정했습니다. gumroadtrends.com은 이렇게 출시되었습니다.
다음을 사용했습니다:
UI는 다음과 같습니다.
7일간의 데이터만으로는 추세를 파악하기 어렵기 때문에 계속해서 자동 조종 장치로 데이터를 수집하고 몇 주 후에 다시 방문하여 더 깊은 통찰력을 얻을 계획입니다.
이 제품을 만드는 데 사용한 모든 것을 공유하게 되어 기쁩니다. 이것은 제가 속해 있는 #buildinpublic 커뮤니티에 대한 저의 작은 기여입니다.
프로젝트에 행운이 있기를 바랍니다!
주제에 관심이 있으시면 언제든지 문의해 주세요. X에서 나를 팔로우하세요
위 내용은 이것이 제가 디지털 제품에 대한 분석 도구를 구축한 방법입니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!