재무 통찰 자동화: Bright Data를 통해 시가총액을 Telegram으로 전송
중급
이것은Crypto Trading분야의자동화 워크플로우로, 14개의 노드를 포함합니다.주로 If, Code, Wait, Telegram, FormTrigger 등의 노드를 사용하며. Bright Data를 사용하여 Yahoo Finance에서 시가총액 데이터를 추출하고 Telegram에서 시각화합니다
사전 요구사항
- •Telegram Bot Token
- •대상 API의 인증 정보가 필요할 수 있음
- •Google Sheets API 인증 정보
카테고리
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
"id": "k2FvKOkV5UgBEnCu",
"meta": {
"instanceId": "bc8ca75c203589705ae2e446cad7181d6f2a7cc1766f958ef9f34810e53b8cb2"
},
"name": "Financial Insight Automation: Market Cap to Telegram via Bright Data",
"tags": [],
"nodes": [
{
"id": "7cebf294-ed28-4cce-935f-8182c953aa5d",
"name": "🟩 폼 트리거",
"type": "n8n-nodes-base.formTrigger",
"position": [
-1440,
16
],
"webhookId": "92772d3e-a1e1-4912-996a-7e799f129fb8",
"parameters": {
"options": {},
"formTitle": "Yahoo",
"formFields": {
"values": [
{
"fieldLabel": "keyword"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "21b115c8-d3a7-4c6e-b3af-aab2e2c7f7d1",
"name": "🚀 스크래핑 트리거1 (HTTP Request to Bright Data)",
"type": "n8n-nodes-base.httpRequest",
"position": [
-1184,
16
],
"parameters": {
"url": "https://api.brightdata.com/datasets/v3/trigger",
"method": "POST",
"options": {},
"jsonBody": "=[\n {\n \"keyword\": \"{{ $json.keyword }}\"\n } \n]",
"sendBody": true,
"sendQuery": true,
"sendHeaders": true,
"specifyBody": "json",
"queryParameters": {
"parameters": [
{
"name": "dataset_id",
"value": "gd_lmrpz3vxmz972ghd7"
},
{
"name": "include_errors",
"value": "true"
},
{
"name": "type",
"value": "discover_new"
},
{
"name": "discover_by",
"value": "keyword"
},
{
"name": "limit_per_input",
"value": "2"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer BRIGHT_DATA_API_KEY"
}
]
}
},
"typeVersion": 4.2,
"alwaysOutputData": true
},
{
"id": "75b8a695-9ad8-4d55-8cee-e6ebfda0defd",
"name": "스티키 노트",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1488,
-144
],
"parameters": {
"color": 7,
"width": 448,
"height": 368,
"content": "🟩 Form Trigger (On form submission1)\n➤ User form se keyword deta hai (e.g. \"AI\", \"Crypto\", \"MSFT\")\n\n🚀 Trigger Scraping1 (HTTP Request to Bright Data)\n➤ Bright Data API ko call karta hai:\n➤ discover_by: keyword, type: discover_new\n➤ Dataset ID: gd_lmrpz3vxmz972ghd7"
},
"typeVersion": 1
},
{
"id": "db304f8b-91e1-4d33-acc9-0ba8351160da",
"name": "🕐 1분 대기1",
"type": "n8n-nodes-base.wait",
"position": [
-720,
16
],
"webhookId": "10b45556-5e91-4387-abd0-f9078b220286",
"parameters": {
"unit": "minutes",
"amount": 1
},
"typeVersion": 1.1
},
{
"id": "c0a0422f-a712-4be9-b46d-c35e6b5956ce",
"name": "🟡 Snap ID1의 전송 상태 확인",
"type": "n8n-nodes-base.httpRequest",
"position": [
-960,
16
],
"parameters": {
"url": "=https://api.brightdata.com/datasets/v3/progress/{{ $json.snapshot_id }}",
"options": {},
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer BRIGHT_DATA_API_KEY"
}
]
}
},
"typeVersion": 4.2,
"alwaysOutputData": true
},
{
"id": "a23cf845-6bff-4a40-a87f-5d0bac918acc",
"name": "🟢 최종 상태 확인",
"type": "n8n-nodes-base.if",
"position": [
-480,
16
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "or",
"conditions": [
{
"id": "35ed620d-b5d5-4e97-bcc5-52b283d85616",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.status }}",
"rightValue": "ready"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "4d719ca5-ae7f-44b2-8b63-ed8a729ebbbb",
"name": "🔽 최종 데이터 제공 (Snapshot Fetch)",
"type": "n8n-nodes-base.httpRequest",
"position": [
-240,
0
],
"parameters": {
"url": "=https://api.brightdata.com/datasets/v3/snapshot/{{ $json.snapshot_id }}",
"options": {},
"sendQuery": true,
"sendHeaders": true,
"queryParameters": {
"parameters": [
{
"name": "format",
"value": "json"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer BRIGHT_DATA_API_KEY"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "6efc936b-cfa4-431f-81a0-fd6536bd3072",
"name": "스티키 노트1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1008,
-240
],
"parameters": {
"color": 3,
"width": 688,
"height": 464,
"content": "⏳ Zone 2: Monitor & Fetch Results\n(Sticky Name: ⏱️ Scraping Monitor & Result Pull)\n\nIncludes:\n\nWait Node – 1 minute delay for job completion\n\nStatus Check Node – Check if status == \"ready\"\n\nIF Node – Loop or continue\n\nSnapshot API – Pull final result"
},
"typeVersion": 1
},
{
"id": "438a38f6-c401-4b75-94c6-e15992a97e76",
"name": "📊 필터링된 출력 및 시트 저장",
"type": "n8n-nodes-base.googleSheets",
"position": [
-16,
0
],
"parameters": {
"columns": {
"value": {
"ask": "={{ $json.ask }}",
"bid": "={{ $json.bid }}",
"eps": "={{ $json.eps }}",
"url": "={{ $json.url }}",
"beta": "={{ $json.pe_ratio }}",
"name": "={{ $json.name }}",
"open": "={{ $json.open }}",
"input": "={{ $json.input }}",
"volume": "={{ $json.volume }}",
"similar": "={{ $json.similar }}",
"summary": "={{ $json.summary }}",
"currency": "={{ $json.currency }}",
"exchange": "={{ $json.exchange }}",
"day_range": "={{ $json.day_range }}",
"eps_trend": "={{ $json.eps_trend }}",
"timestamp": "={{ $json.timestamp }}",
"avg_volume": "={{ $json.avg_volume }}",
"company_id": "={{ $json.company_id }}",
"financials": "={{ $json.financials }}",
"market_cap": "={{ $json.market_cap }}",
"target_est": "={{ $json.target_est }}",
"week_range": "={{ $json.week_range }}",
"entity_type": "={{ $json.entity_type }}",
"recent_news": "={{ $json.recent_news }}",
"stock_ticker": "={{ $json.stock_ticker }}",
"top_analysts": "={{ $json.top_analysts }}",
"closing_price": "={{ $json.closing_price }}",
"earnings_date": "={{ $json.earnings_date }}",
"eps_revisions": "={{ $json.eps_revisions }}",
"dividend_yield": "={{ $json.dividend_yield }}",
"previous_close": "={{ $json.previous_close }}",
"discovery_input": "={{ $json.discovery_input }}",
"earnings_history": "={{ $json.earnings_history }}",
"growth_estimates": "={{ $json.growth_estimates }}",
"revenue_estimate": "={{ $json.revenue_estimate }}",
"earnings_estimate": "={{ $json.earnings_estimate }}",
"people_also_watch": "={{ $json.people_also_watch }}",
"fanacials_currency": "={{ $json.fanacials_currency }}",
"stock_market_index": "={{ $json.stock_market_index }}",
"analyst_price_target": "={{ $json.analyst_price_target }}",
"financials_quarterly": "={{ $json.financials_quarterly }}",
"company_profile_phone": "={{ $json.company_profile_phone }}",
"company_profile_sector": "={{ $json.company_profile_sector }}",
"company_profile_address": "={{ $json.company_profile_address }}",
"company_profile_website": "={{ $json.company_profile_website }}",
"upgrades_and_downgrades": "={{ $json.upgrades_and_downgrades }}",
"company_profile_industry": "={{ $json.company_profile_industry }}",
"company_profile_employees": "={{ $json.company_profile_key_executives }}",
"company_profile_description": "={{ $json.company_profile_description }}",
"company_profile_key_executives": "={{ $json.company_profile_key_executives }}"
},
"schema": [
{
"id": "name",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "name",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": []
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/YOUR_SHEET_ID/edit#gid=0",
"cachedResultName": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "url",
"value": "=https://docs.google.com/spreadsheets/d/YOUR_SHEET_ID/edit?gid=0#gid=0"
}
},
"credentials": {},
"typeVersion": 4.6
},
{
"id": "eb1997f3-3a09-417b-9ea6-86861ec5c1df",
"name": "스티키 노트2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-288,
-256
],
"parameters": {
"color": 4,
"width": 432,
"height": 480,
"content": "📊 Zone 3: Filter & Output\n(Sticky Name: 📊 Filtered Output & Save to Sheet)\n\nIncludes:\n\nOptional IF Node – Market Cap > $1B\n\nCode Node – Format complex arrays to human readable\n\nGoogle Sheets Node – Append data to final sheet\n\n"
},
"typeVersion": 1
},
{
"id": "87619346-06ed-4311-a7e0-bcb82f554aca",
"name": "🧮 차트 페이로드 생성",
"type": "n8n-nodes-base.code",
"position": [
240,
0
],
"parameters": {
"jsCode": "const itemsOut = [];\n\nconst labels = [];\nconst data = [];\n\nfor (const item of items) {\n const name = item.json.name;\n let cap = item.json.market_cap;\n if (cap === undefined || cap === null) cap = \"0\";\n cap = String(cap);\n\n let value = 0;\n if (cap.includes(\"T\")) value = parseFloat(cap) * 1e12;\n else if (cap.includes(\"B\")) value = parseFloat(cap) * 1e9;\n else if (cap.includes(\"M\")) value = parseFloat(cap) * 1e6;\n else value = parseFloat(cap);\n\n labels.push(name);\n data.push(Math.round(value / 1e9));\n}\n\nconst chartPayload = {\n type: 'bar',\n data: {\n labels,\n datasets: [{\n label: 'Market Cap (in Billion $)',\n data,\n backgroundColor: [\n 'rgba(75, 192, 192, 0.8)',\n 'rgba(153, 102, 255, 0.8)',\n 'rgba(255, 159, 64, 0.8)',\n 'rgba(255, 99, 132, 0.8)',\n 'rgba(54, 162, 235, 0.8)',\n 'rgba(201, 203, 207, 0.8)'\n ],\n borderColor: 'rgba(0,0,0,0.1)',\n borderWidth: 1\n }]\n },\n options: {\n indexAxis: 'y',\n responsive: true,\n plugins: {\n legend: {\n display: false\n },\n title: {\n display: true,\n text: '📊 Company Market Cap Overview',\n font: {\n size: 20\n },\n padding: {\n top: 10,\n bottom: 20\n }\n },\n tooltip: {\n callbacks: {\n label: function(context) {\n return context.dataset.label + ': $' + context.raw + 'B';\n }\n }\n }\n },\n scales: {\n x: {\n title: {\n display: true,\n text: 'Market Cap (in Billions $)'\n },\n grid: {\n display: true\n }\n },\n y: {\n ticks: {\n font: {\n size: 12\n }\n }\n }\n }\n }\n};\n\nitemsOut.push({ json: { chart: chartPayload } });\nreturn itemsOut;"
},
"typeVersion": 2
},
{
"id": "a4c79ae7-ef35-4509-91f5-71107fcfee20",
"name": "🌐 차트에서 PNG 생성",
"type": "n8n-nodes-base.httpRequest",
"position": [
448,
0
],
"parameters": {
"url": "=https://quickchart.io/chart?c={{ JSON.stringify($json.chart) }}",
"options": {}
},
"typeVersion": 4.2
},
{
"id": "405f8c35-7747-442b-a14f-898a2b366d0e",
"name": "📤 Telegram에 차트 전송",
"type": "n8n-nodes-base.telegram",
"position": [
656,
0
],
"webhookId": "d7190374-fdad-4ccd-ab58-77794a247fb1",
"parameters": {
"chatId": "YOUR_TELEGRAM_CHAT_ID",
"operation": "sendPhoto",
"binaryData": true,
"additionalFields": {}
},
"credentials": {},
"typeVersion": 1.2
},
{
"id": "01b96865-6ae1-43d8-962d-2a7141f9254f",
"name": "스티키 노트3",
"type": "n8n-nodes-base.stickyNote",
"position": [
208,
-256
],
"parameters": {
"width": 624,
"height": 480,
"content": "1.🧮 Generate Chart Payload (Code Node)\nPrepare chart data (labels + values) for market cap in billions using QuickChart format.\n\n2.🌐 Generate PNG from Chart (HTTP Request Node)\nPurpose: Use QuickChart.io API to generate PNG image from chart JSON.\n\n3.📤 Send Chart on Telegram (Telegram Node)\nPurpose: Send chart image with caption to client/group."
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "514d9f62-1953-40f2-bf5d-9b00b95ded68",
"connections": {
"7cebf294-ed28-4cce-935f-8182c953aa5d": {
"main": [
[
{
"node": "21b115c8-d3a7-4c6e-b3af-aab2e2c7f7d1",
"type": "main",
"index": 0
}
]
]
},
"db304f8b-91e1-4d33-acc9-0ba8351160da": {
"main": [
[
{
"node": "a23cf845-6bff-4a40-a87f-5d0bac918acc",
"type": "main",
"index": 0
}
]
]
},
"a23cf845-6bff-4a40-a87f-5d0bac918acc": {
"main": [
[
{
"node": "4d719ca5-ae7f-44b2-8b63-ed8a729ebbbb",
"type": "main",
"index": 0
}
],
[
{
"node": "c0a0422f-a712-4be9-b46d-c35e6b5956ce",
"type": "main",
"index": 0
}
]
]
},
"87619346-06ed-4311-a7e0-bcb82f554aca": {
"main": [
[
{
"node": "a4c79ae7-ef35-4509-91f5-71107fcfee20",
"type": "main",
"index": 0
}
]
]
},
"a4c79ae7-ef35-4509-91f5-71107fcfee20": {
"main": [
[
{
"node": "405f8c35-7747-442b-a14f-898a2b366d0e",
"type": "main",
"index": 0
}
]
]
},
"438a38f6-c401-4b75-94c6-e15992a97e76": {
"main": [
[
{
"node": "87619346-06ed-4311-a7e0-bcb82f554aca",
"type": "main",
"index": 0
}
]
]
},
"4d719ca5-ae7f-44b2-8b63-ed8a729ebbbb": {
"main": [
[
{
"node": "438a38f6-c401-4b75-94c6-e15992a97e76",
"type": "main",
"index": 0
}
]
]
},
"c0a0422f-a712-4be9-b46d-c35e6b5956ce": {
"main": [
[
{
"node": "db304f8b-91e1-4d33-acc9-0ba8351160da",
"type": "main",
"index": 0
}
]
]
},
"21b115c8-d3a7-4c6e-b3af-aab2e2c7f7d1": {
"main": [
[
{
"node": "c0a0422f-a712-4be9-b46d-c35e6b5956ce",
"type": "main",
"index": 0
}
]
]
}
}
}자주 묻는 질문
이 워크플로우를 어떻게 사용하나요?
위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.
이 워크플로우는 어떤 시나리오에 적합한가요?
중급 - 암호화폐 거래
유료인가요?
이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.
관련 워크플로우 추천
전략 고객 흐름: BrightData를 통해 Yelp과 Trustpilot 추출 + OpenAI 분석
Yelp과Trustpilot에서 추출 + AI 추동된 이메일 외부 연락으로 판매 유도 생성
If
Code
Wait
+
If
Code
Wait
32 노드Incrementors
영업
Bright Data와 Telegram 알림 통합의 Google Play 리뷰 인공지능 시스템
Bright Data와 Telegram 알림을 사용한 Google Play 리뷰 지능형 분석 시스템
If
Wait
Telegram
+
If
Wait
Telegram
18 노드Incrementors
인공지능
LinkedIn 및 Indeed 직장 추출기(Bright Data를 통해)와 Google 스프레드시트로 내보내기
LinkedIn, Indeed, Bright Data 및 Google 스프레드시트를 사용한 직장 수집
If
Code
Wait
+
If
Code
Wait
33 노드Incrementors
인사
Bright Data를 통해 위키백과 내용을 그래픽이 포함된 LinkedIn AI 콘텐츠 발행기로 변환
GPT-4 요약과 Ideogram 이미지를 사용하여 위키백과에서 LinkedIn 게시물 생성
If
Code
Wait
+
If
Code
Wait
19 노드Incrementors
소셜 미디어
Bright Data API와 Google 스프레드시트 통합의 Google Maps 상인 전화 추출기
Bright Data API와 Google Sheets를 통해 동기화된 Google Maps 전화 추출기
If
Wait
Form Trigger
+
If
Wait
Form Trigger
16 노드Incrementors
영업
블로그 게시자 – 완전한 AI 기반 콘텐츠 연구, 제작, 최적화 및 게시 자동화
Gemini, Ideogram AI 및 WordPress를 사용한 블로그 생성 및 게시 자동화
If
Set
Code
+
If
Set
Code
35 노드Incrementors
콘텐츠 제작