
تحلیل خودکار رتبهبندی کلمات کلیدی با SE Ranking و GPT-4
12 دقیقه مطالعه · منتشر شده ۱۴۰۵/۴/۳۰
دانلود workflow
فایل JSON آماده import در n8n — credentialها باید در n8n شما تنظیم شوند.
- فایل JSON را دانلود کنید.
- در n8n: Workflows → Import from File.
- Credentialهای هر node را متصل کنید.
- workflow را فعال کنید.
شناسه workflow: 12631 · منبع: کاتالوگ Axeto
تحلیل رتبهبندی کلمات کلیدی دامنه و خلاصهسازی با SE Ranking و GPT-4.1-mini
این گردش کار، فرآیند دریافت دادههای رتبهبندی کلمات کلیدی دامنه از SE Ranking، خلاصهسازی آن با استفاده از مدل GPT-4.1-mini اوپنایآی و سپس ذخیره و خروجی گرفتن نتایج را خودکار میکند.
دستهبندیها: تحقیقات بازار، خلاصهسازی هوش مصنوعی
گرههای استفاده شده:
-
n8n-nodes-base.set -
n8n-nodes-base.code -
n8n-nodes-base.merge -
n8n-nodes-base.function -
n8n-nodes-base.aggregate -
n8n-nodes-base.dataTable -
n8n-nodes-base.stickyNote -
n8n-nodes-base.httpRequest -
n8n-nodes-base.googleSheets -
n8n-nodes-base.convertToFile -
n8n-nodes-base.manualTrigger -
@n8n/n8n-nodes-langchain.lmChatOpenAi
---
نمای کلی گردش کار
هدف: این گردش کار، دادههای رتبهبندی کلمات کلیدی یک دامنه را از SE Ranking بازیابی میکند، فیلترها را اعمال کرده و ستونهای خاصی را انتخاب میکند. سپس از OpenAI GPT-4.1-mini (از طریق نودهای LangChain) برای تولید خلاصههای ساختاریافته استفاده میکند. در نهایت، گردش کار این دادهها را تجمیع و غنیسازی کرده و قبل از ذخیره در چندین مقصد، آن را آماده میکند: یک n8n DataTable، یک Google Sheet و برای خروجی فایل آماده میشود.
موارد استفاده هدف:
- نظارت بر عملکرد سئو
- گزارشدهی به مشتری و مدیران
- کشف فرصتهای کلمات کلیدی
- تحلیل رقبا
- اتوماسیون سئو در مقیاس بزرگ
مراحل گردش کار:
1. ورودی و پارامترسازی: دامنه هدف، محدوده داده (ارگانیک/پرداخت شده)، منطقه، محدودیتها، فیلترها و ستونهای خروجی مورد نظر را تعریف کنید.
2. بازیابی داده SE Ranking: با پارامترها و احراز هویت پیکربندی شده، به نقطه پایانی Domain Keywords API در SE Ranking فراخوانی کنید.
3. خلاصهسازی هوش مصنوعی (LLM + استخراج ساختاریافته): پاسخ JSON دريافت شده از SE Ranking را به یک پرامپت طراحی شده برای "استخراج کننده اطلاعات" تغذیه کنید تا خروجی ساختاریافتهای با دو فیلد خلاصه تولید کند: یک خلاصه جامع و یک خلاصه چکیده.
4. غنیسازی و تجمیع: خلاصههای تولید شده توسط هوش مصنوعی و پاسخ خام API را استخراج کرده، آنها را ادغام و در یک شیء واحد و تجمیع شده جمعآوری کنید.
5. ذخیرهسازی و خروجی: نتیجه تجمیع شده را در موارد زیر ذخیره کنید:
* n8n DataTable
* Google Sheets
* خروجی فایل را با تبدیل دادهها به فرمت باینری آماده کنید.
---
تحلیل گره به گره (Detailed Node Analysis)
بلوک ۱: ورودی و پارامتردهی (Input & Parameterization)
مرور کلی: این بلوک پارامترهای اولیه گردش کار را تنظیم میکند، شامل دامنه هدف، نوع داده، منطقه و ستونهای خاصی که باید از SE Ranking بازیابی شوند.
#### گره: ماشه دستی (Manual Trigger)
- نوع: ماشه دستی (Manual Trigger)
- نقش: نقطه ورود برای اجرای دستی گردش کار.
- پیکربندی: ندارد.
- اتصالات: گره
تنظیم فیلدهای ورودی(Set Input Fields) را فعال میکند. - حالتهای شکست: ندارد (توسط کاربر آغاز میشود).
#### گره: تنظیم فیلدهای ورودی (Set Input Fields)
- نوع: تنظیم (Set)
- نقش: پارامترهای ورودی برای درخواست API SE Ranking را تعریف و ساختاربندی میکند.
- فیلدهای کلیدی تنظیم شده (مقادیر پیشفرض):
* target_site: seranking.com
* type: organic (در صورت پشتیبانی API میتواند به paid تغییر یابد)
* limit: 100 (توجه: این یک رشته است؛ API ممکن است عدد را بپذیرد)
* filter: sitelinks (به عنوان filter[serp_features] استفاده میشود)
* source: us
* columns: keyword,cpc,volume,snippet_title,competition,difficulty,url,total_sites,traffic,traffic_percent,price,serp_features,intents
- عبارات/متغیرها: ندارد (مقادیر پیشفرض ثابت).
- اتصالات: خروجی به گره
درخواست SE Ranking(SE Ranking Request) میرود. - موارد لبهای (Edge Cases):
* پارامتر limit به صورت رشته تنظیم شده است. اطمینان حاصل کنید که API SE Ranking این را به درستی مدیریت میکند؛ در صورت بروز مشکلات اعتبارسنجی، تبدیل به عدد را در نظر بگیرید.
* فیلد columns باید مطابق با مستندات API SE Ranking حاوی مقادیر معتبر باشد. نام ستونهای نادرست میتواند منجر به خطاهای API شود.
---
بلوک ۲: بازیابی داده SE Ranking (SE Ranking Data Retrieval)
مرور کلی: این بلوک فراخوانی واقعی API را به SE Ranking برای دریافت دادههای رتبهبندی کلمات کلیدی بر اساس پارامترهای تعریف شده در بلوک قبلی انجام میدهد.
#### گره: درخواست SE Ranking (SE Ranking Request)
- نوع: درخواست HTTP (HTTP Request)
- نقش: دادههای رتبهبندی کلمات کلیدی دامنه را از API SE Ranking دریافت میکند.
- نقطه پایانی (Endpoint):
https://api.seranking.com/v1/domain/keywords - احراز هویت (Authentication):
* با استفاده از genericCredentialType → httpHeaderAuth (با نام "SE Ranking") پیکربندی شده است.
توجه:* اطمینان حاصل کنید که اعتبارنامه صحیح (مثلاً توکن bearer) پیکربندی و انتخاب شده است.
- پارامترهای پرس و جو (Query Parameters) (با استفاده از عبارات):
* source: {{$json.source}}
* url: {{$json.target_site}}
* type: {{$json.type}}
* limit: {{$json.limit}}
* filter[serp_features]: {{$json.filter}}
* cols: {{$json.columns}}
- گزینههای زمان اجرا (Runtime Options):
retryOnFail: true - اتصالات: خروجی به گره
خلاصهساز هوش مصنوعی SE Ranking(SE Ranking AI Summarizer) میرود. - حالتهای شکست و موارد لبهای:
* خطاهای احراز هویت: 401/403 اگر توکن API گم شده باشد، منقضی شده باشد یا نام هدر نادرست باشد.
* خطاهای اعتبارسنجی: خطاهای 400 برای cols، type، source یا نحو فیلتر نامعتبر.
* مهلت زمانی/بارهای داده بزرگ: اگر limit بالا باشد یا ستونهای زیادی درخواست شود، پاسخ ممکن است بزرگ باشد و به طور بالقوه باعث مهلت زمانی شود.
* قالب دامنه در مقابل URL: اطمینان حاصل کنید که قالب target_site (مثلاً seranking.com در مقابل https://seranking.com/) با انتظارات API SE Ranking مطابقت دارد.
---
بلوک ۳: خلاصهسازی هوش مصنوعی (LLM + استخراج ساختاریافته) (AI Summarization (LLM + Structured Extraction))
مرور کلی: این بلوک از مدل gpt-4.1-mini اوپنایآی برای پردازش دادههای خام SE Ranking و تولید دو خلاصه مجزا استفاده میکند: یکی جامع و دیگری چکیدهای مختصرتر.
#### گره: مدل چت اوپنایآی (OpenAI Chat Model)
- نوع: مدل چت LangChain (OpenAI) (LangChain Chat Model (OpenAI))
- نقش: بکاند مدل زبان بزرگ (LLM) را فراهم میکند.
- مدل:
gpt-4.1-mini - اعتبارنامهها: نیاز به اعتبارنامه "حساب OpenAI" (OpenAi account) دارد.
- اتصالات: خروجی مدل زبان هوش مصنوعی به گره
خلاصهساز هوش مصنوعی SE Ranking(SE Ranking AI Summarizer) تغذیه میشود. - حالتهای شکست و موارد لبهای:
* مشکلات احراز هویت API اوپنایآی، صورتحساب یا سهمیه.
* تغییرات در دسترس بودن یا نامگذاری مدل (gpt-4.1-mini).
#### گره: خلاصهساز هوش مصنوعی SE Ranking (SE Ranking AI Summarizer)
- نوع: استخراجکننده اطلاعات LangChain (LangChain Information Extractor)
- نقش: متن ورودی را با استفاده از یک prompt پردازش کرده و دادههای ساختاریافته را بر اساس یک طرحواره (schema) تعریف شده استخراج میکند.
- متن ورودی (Prompt):
* شامل دستورالعملهایی مانند: "از JSON زیر برای ایجاد یک مرور کلی استفاده کنید..."
* کل JSON ورودی را با استفاده از: {{ $json.toJsonString() }} تزریق میکند.
- طرحواره استخراج (دستی):
* یک شیء شامل:
* comprehensive_summary (رشته)
* abstract_summary (رشته)
- پرچمهای عملیاتی (Operational Flags):
* retryOnFail: true
* executeOnce: false
- اتصالات:
* خروجی اصلی به استخراج خلاصه (Extract Summary) متصل میشود.
* خروجی اصلی همچنین به استخراج پاسخ خام (Extract Raw Response) متصل میشود.
- حالتهای شکست و موارد لبهای:
* سرریز توکن/زمینه (Token/Context Overflow): اگر پاسخ SE Ranking بیش از حد بزرگ باشد (به دلیل limit بالا یا columns زیاد)، ممکن است از پنجره زمینه LLM فراتر رود. راه حل: limit را کاهش دهید، ستونهای کمتری انتخاب کنید، یا دادهها را پیشپردازش/کوتاه کنید.
* عدم تطابق طرحواره (Schema Mismatch): اگر LLM نتواند خروجی مطابق با طرحواره تعریف شده تولید کند، گرههای پاییندستی ممکن است خصوصیات مورد انتظار را پیدا نکنند.
* کیفیت خلاصه: خلاصهها ممکن است بیش از حد کلی باشند یا بینشهای خاصی را نداشته باشند اگر prompt، LLM را در مورد اینکه کدام KPIها یا اقدامات باید مورد تمرکز قرار گیرند، راهنمایی نکند (مثلاً کلمات کلیدی برتر، سهم ترافیک، توزیع قصد).
---
بلوک ۴: غنیسازی و تجمیع (Enrichment & Consolidation)
مرور کلی: این بلوک خلاصههای تولید شده توسط هوش مصنوعی را از پاسخ خام API جدا کرده، آنها را در یک ساختار داده واحد ادغام میکند و سپس این دادههای تجمیع شده را برای ذخیرهسازی جمعآوری میکند.
#### گره: استخراج خلاصه (Extract Summary)
- نوع: کد (Code)
- نقش: خروجی استخراجکننده اطلاعات را به یک فیلد
summaryواحد نرمال میکند. - منطق:
summary = $input.first().json.outputرا برمیگرداند. - فرض: گره استخراجکننده اطلاعات فیلدهای استخراج شده را تحت
json.outputخروجی میدهد. - اتصالات: خروجی به گره
ادغام(Merge) (شاخص ورودی ۰) میرود. - حالتهای شکست و موارد لبهای:
* اگر فرمت خروجی استخراجکننده اطلاعات تغییر کند (مثلاً از extracted به جای output استفاده کند)، فیلد summary تعریف نشده خواهد بود.
* اگر هیچ آیتم ورودی وجود نداشته باشد، $input.first() میتواند null باشد.
#### گره: استخراج پاسخ خام (Extract Raw Response)
- نوع: کد (Code)
- نقش: پاسخ خام API SE Ranking را برای ادغام ثبت میکند.
- منطق:
domain_keywords_response = $('SE Ranking Request').first().jsonرا برمیگرداند. - جزئیات کلیدی: از یک ارجاع گره (
$('SE Ranking Request')) برای دسترسی به خروجی گره "SE Ranking Request" استفاده میکند، به جای اتکا به جریان ورودی فعلی. - اتصالات: خروجی به گره
ادغام(Merge) (شاخص ورودی ۱) میرود. - حالتهای شکست و موارد لبهای:
* اگر گره "SE Ranking Request" شکست بخورد یا دادهای برنگرداند، .first() ممکن است منجر به خطا یا خروجی خالی شود.
* تغییر نام گره "SE Ranking Request" این عبارت را خراب میکند.
#### گره: ادغام (Merge)
- نوع: ادغام (Merge)
- نقش: خلاصه استخراج شده و پاسخ خام SE Ranking را به یک جریان داده واحد ترکیب میکند.
- حالت: رفتار ادغام پیشفرض (معمولاً هنگام داشتن آیتم در هر دو ورودی، بر اساس موقعیت ادغام میکند).
- اتصالات: خروجی به گره
تجمیع(Aggregate) میرود. - حالتهای شکست و موارد لبهای:
* اگر هر یک از شاخههای ورودی صفر آیتم تولید کنند، خروجی ادغام ممکن است خالی باشد. اطمینان حاصل کنید که هر دو شاخه به طور مداوم داده تولید میکنند.
* اگر هر دو شاخه به طور غیرمنتظرهای چندین آیتم تولید کنند، جفتسازی ممکن است آنطور که در نظر گرفته شده نباشد. این گردش کار فرض میکند خروجیهای تک آیتمی از هر دو شاخه.
#### گره: تجمیع (Aggregate)
- نوع: تجمیع (Aggregate)
- نقش: تمام آیتمهای داده را در یک ساختار تجمیع شده واحد ادغام میکند.
- عملیات:
aggregateAllItemData(همه آیتمها را در یک مورد ترکیب میکند). - اتصالات (Fan-out):
* خروجی به ایجاد داده باینری (Create a Binary Data) میرود.
* خروجی به ذخیره در جدول داده (Persist on DataTable) میرود.
* خروجی به افزودن یا بهروزرسانی ردیف در صفحه گسترده (Append or update row in sheet) میرود.
- حالتهای شکست و موارد لبهای:
* یک شیء تجمیع شده بسیار بزرگ ممکن است از محدودیتهای حافظه فراتر رود.
* اگر گره ادغام به طور غیرمنتظرهای چندین آیتم تولید کند، تجمیع آنها را در بر میگیرد و ممکن است منجر به آرایههای تودرتو در گرههای پاییندستی شود.
---
بلوک ۵: ذخیرهسازی و خروجی (Persistence & Export)
مرور کلی: این بلوک نهایی مسئولیت ذخیره و خروجی دادن دادههای پردازش شده را بر عهده دارد. نتایج تجمیع شده را در یک جدول داده n8n، یک صفحه گسترده Google و یک فایل باینری آماده برای دانلود ذخیره میکند.
#### گره: ذخیره در جدول داده (Persist on DataTable)
- نوع: جدول داده (DataTable)
- نقش: بار داده JSON تجمیع شده را به عنوان یک رشته در یک جدول داده n8n ذخیره میکند.
- نگاشت (Mapping):
* ستون data: ={{ $json.data.toJsonString() }}
* از ستون data برای تطبیق استفاده میکند (منطق بهروزرسانی/درج به پیکربندی جدول داده بستگی دارد).
- جدول داده هدف: "DomainKeywordRanking" (شناسه در گره ذخیره شده است).
- اتصالات: گره پایانی برای این شاخه.
- حالتهای شکست و موارد لبهای:
* جدول داده یافت نشد یا مجوزهای ناکافی.
* تطبیق بر اساس یک رشته JSON کامل شکننده است؛ تغییرات جزئی میتواند منجر به ایجاد ردیفهای جدید به جای بهروزرسانی شود. کلیدهای پایدار (مانند دامنه، مُهر زمانی) را برای تطبیق قابل اعتمادتر در نظر بگیرید.
#### گره: افزودن یا بهروزرسانی ردیف در صفحه گسترده (Append or update row in sheet)
- نوع: Google Sheets
- نقش: دادههای JSON تجمیع شده را به عنوان یک رشته در یک صفحه گسترده Google ذخیره میکند.
- عملیات: افزودن یا بهروزرسانی (Append or Update)
- سند: "Domain Keyword Rankings"
- برگه صفحه گسترده: "Sheet1" (gid=0)
- نگاشت ستون:
* json_data: ={{ $json.data.toJsonString() }}
* از ستون json_data برای تطبیق استفاده میکند.
- اعتبارنامهها: نیاز به اعتبارنامه OAuth2 "حساب Google Sheets" (Google Sheets account) دارد.
- اتصالات: گره پایانی برای این شاخه.
- حالتهای شکست و موارد لبهای:
* انقضا یا لغو توکن OAuth Google Sheets.
* عدم تطابق ساختار صفحه گسترده (مثلاً سرصفحه ستون json_data گم شده است).
* تطبیق بر روی رشته JSON کامل باعث بهروزرسانی نمیشود؛ این گره به احتمال زیاد ردیفهای جدید را به طور مکرر اضافه میکند مگر اینکه منطق تطبیق اصلاح شود.
#### گره: ایجاد داده باینری (Create a Binary Data)
- نوع: تابع (Function)
- نقش: دادههای JSON تجمیع شده را به یک خصوصیت باینری تبدیل میکند و آن را برای خروجی فایل آماده میسازد.
- منطق: یک خصوصیت باینری
dataایجاد میکند که حاوی رشته JSON کدگذاری شده با base64 دادههای تجمیع شده است. - اتصالات: خروجی به گره
تبدیل به فایل(Convert to File) میرود. - حالتهای شکست و موارد لبهای:
* از new Buffer(...) قدیمی استفاده میکند که ممکن است در نسخههای جدیدتر Node.js منسوخ شده باشد. برای محیطهای مدرن Node.js، Buffer.from(...) را ترجیح دهید.
#### گره: تبدیل به فایل (Convert to File)
- نوع: تبدیل به فایل (Convert to File)
- نقش: دادههای باینری را گرفته و آن را به یک شیء فایل قابل دانلود تبدیل میکند.
- پیکربندی:
* نام فایل: domain-keyword-ranking-{{$now.toFormat('yyyyMMdd_HHmmss')}}.json (شامل مُهر زمانی برای منحصر به فرد بودن است).
* نوع فایل: application/json
- اتصالات: گره پایانی برای این شاخه، که معمولاً برای دانلودهای دستی یا پردازش بیشتر در سیستم فایل n8n استفاده میشود.
- حالتهای شکست و موارد لبهای:
* مشکلات مربوط به قراردادهای نامگذاری فایل یا تداخل مسیر در صورت استفاده در یکپارچهسازی پیچیدهتر سیستم فایل.
Nodeهای استفادهشده
سوالات متداول
این گردش کار n8n چه کاری انجام میدهد؟▾
این گردش کار دادههای رتبهبندی کلمات کلیدی دامنه را از SE Ranking دریافت میکند، با استفاده از GPT-4.1-mini خلاصههای ساختاریافته از این دادهها تولید میکند و سپس نتایج را در مقاصد مختلفی مانند Google Sheets و فایلها ذخیره میکند.
چه ابزارهایی در این گردش کار استفاده شدهاند؟▾
این گردش کار از ابزارهایی مانند SE Ranking برای دریافت دادهها، OpenAI GPT-4.1-mini برای خلاصهسازی و n8n برای اتوماسیون و اتصال ابزارها استفاده میکند. همچنین از گرههایی مانند httpRequest، googleSheets و convertToFile بهره میبرد.
موارد استفاده اصلی این گردش کار چیست؟▾
موارد استفاده اصلی شامل نظارت بر عملکرد سئو، گزارشدهی به مشتریان و مدیران، کشف فرصتهای کلمات کلیدی، تحلیل رقبا و اتوماسیون سئو در مقیاس بزرگ است.
workflowهای مرتبط
- طبقهبندی خودکار حوادث امنیتی با GPT-4 و Google SheetsSecOps
- دستهبندی خودکار ایمیل جیمیل با GPT-4o و هشدار SlackAI Summarization
- دستهبندی خودکار پستهای وبلاگ با هوش مصنوعی و گیتهابContent Creation
- تحلیل خودکار Google Analytics با هوش مصنوعی Gemini و اعلانه…Market Research
- خودکارسازی اصلاح نقطه پایانی با Wazuh، ClamAV و GPT-4SecOps
- تغییر نام خودکار گرههای n8n با هوش مصنوعیEngineering
