تحلیل خودکار نظرات گوگل با SerpAPI و GPT-4

تحلیل خودکار نظرات گوگل با SerpAPI و GPT-4

9 دقیقه مطالعه · منتشر شده ۱۴۰۵/۴/۲۹

دانلود workflow

فایل JSON آماده import در n8n — credentialها باید در n8n شما تنظیم شوند.

  1. فایل JSON را دانلود کنید.
  2. در n8n: Workflows → Import from File.
  3. Credentialهای هر node را متصل کنید.
  4. workflow را فعال کنید.

شناسه workflow: 6066 · منبع: کاتالوگ Axeto

تحلیل و خلاصه‌سازی نظرات گوگل با SerpAPI، GPT-4 و Google Sheets

این گردش کار فرآیند استخراج، تحلیل و خلاصه‌سازی نظرات Google Maps را برای لیستی از کسب‌وکارها با استفاده از SerpAPI، GPT-4 و Google Sheets خودکار می‌کند. این گردش کار برای تحقیقات بازار، تحلیل رقابتی یا جمع‌آوری بازخورد مشتری در مقیاس ایده‌آل است.

ویژگی‌های کلیدی:

  • دریافت خودکار داده: نظرات کسب‌وکار را مستقیماً از Google Maps از طریق SerpAPI بازیابی می‌کند.
  • تحلیل مبتنی بر هوش مصنوعی: از GPT-4 برای تحلیل احساسات و استخراج کلمات کلیدی از نظرات استفاده می‌کند.
  • یکپارچه‌سازی یکپارچه: برای ورودی (لیست کسب‌وکار) و خروجی (نظرات تحلیل‌شده) با Google Sheets ادغام می‌شود.
  • پاک‌سازی و فیلتر کردن داده: داده‌های خام را پردازش می‌کند، اطلاعات مرتبط را استخراج می‌کند و متن نظراتی که در دسترس نیست را مدیریت می‌کند.
  • خروجی واضح: نظرات با موفقیت تحلیل‌شده را از مواردی که به دلیل عدم وجود متن نادیده گرفته شده‌اند، جدا می‌کند.

---

تشریح گردش کار

این گردش کار به بلوک‌های منطقی تقسیم شده است که هر کدام وظیفه خاصی را انجام می‌دهند:

۱. ورودی و راه‌اندازی

  • Manual Trigger: اجرای گردش کار را آغاز می‌کند.
  • Sticky Notes: راهنمایی جامع، دستورالعمل‌ها و کمک‌های بصری برای درک و استفاده از گردش کار ارائه می‌دهد.
  • Pull Sample Restaurants (Google Sheets): لیستی از نام مشاغل را از یک Google Sheet مشخص می‌خواند.

۲. کسب و پردازش داده

  • Get Data (HTTP Request): نقطه پایانی Google Maps در SerpAPI را برای دریافت نظرات هر کسب و کار پرس و جو می‌کند.
  • Cleans It Up (Code): پاسخ SerpAPI را تجزیه و تحلیل می‌کند، جزئیات کلیدی نظر (متن، رتبه، تاریخ) را استخراج کرده و آنها را برای پردازش بیشتر آماده می‌کند.
  • If review text is NOT empty (If): نظراتی را که فاقد محتوای متنی هستند فیلتر کرده و آنها را به یک فرآیند ثبت جداگانه هدایت می‌کند.

۳. تحلیل هوش مصنوعی

  • Analyze Review Sentiment (LangChain OpenAI): نظرات متنی را برای تحلیل احساسات (مثبت، خنثی، منفی) و استخراج کلمات کلیدی به GPT-4 ارسال می‌کند. خروجی به صورت JSON ساختار یافته است.

۴. خروجی داده

  • Export Data (Google Sheets): نظرات با موفقیت تحلیل شده، از جمله احساسات و کلمات کلیدی تولید شده توسط هوش مصنوعی را به یک تب مشخص در Google Sheet اضافه می‌کند.
  • Failed Reviews (Google Sheets): نظراتی را که به دلیل متن از دست رفته نادیده گرفته شده‌اند، در یک تب جداگانه در Google Sheet ثبت می‌کند و دلیل نادیده گرفتن را نشان می‌دهد.

---

جزئیات گره به گره

۱. ورودی و راه‌اندازی

#### Manual Trigger

  • نوع: n8n-nodes-base.manualTrigger
  • نقش: شروع دستی گردش کار.
  • خروجی: گره "Pull Sample Restaurants" را فعال می‌کند.

#### Sticky Notes

  • نوع: n8n-nodes-base.stickyNote
  • نقش: ارائه مستندات درون‌خطی، دستورالعمل‌ها و زمینه.

* Sticky Note1: نمای کلی گردش کار، دستورالعمل‌های استفاده و الزامات.

* Sticky Note: توضیح مرحله خراشیدن نقشه‌های گوگل.

* Sticky Note2: جزئیات مربوط به پاکسازی داده‌ها، فیلتر کردن و مدیریت نظرات خالی.

* Sticky Note3: توضیح فرآیند تجزیه و تحلیل و خروجی هوش مصنوعی.

* Sticky Note4: تصویر فرمت ورودی Google Sheets.

* Sticky Note5: تصویر فرمت خروجی Google Sheets.

#### Pull Sample Restaurants

  • نوع: n8n-nodes-base.googleSheets
  • نقش: خواندن لیستی از نام مشاغل از یک Google Sheet.
  • پیکربندی:

* از یک سند Google Sheet خاص (شناسه: 1mJRBu96urKkUAUMz1chcipgKlqw6UhKcSLzF0xp_D6w) می‌خواند.

* یک شیت خاص (GID: 0) را هدف قرار می‌دهد.

* به اعتبارنامه‌های Google OAuth2 نیاز دارد.

  • ورودی: توسط ماشه دستی فعال می‌شود.
  • خروجی: لیست نام مشاغل را به گره "Get Data" ارسال می‌کند.

۲. کسب و پردازش داده

#### Get Data

  • نوع: n8n-nodes-base.httpRequest
  • نقش: واکشی داده‌های نقشه‌های گوگل، از جمله نظرات، با استفاده از SerpAPI.
  • پیکربندی:

* متد: GET

* URL: نقطه پایانی جستجوی نقشه‌های گوگل SerpAPI.

* پارامترهای کوئری:

* engine: google_maps

* type: search

* q: به طور پویا بر اساس نام کسب و کار ورودی تنظیم می‌شود.

* api_key: از طریق اعتبارنامه‌ها یا پارامتر ارائه می‌شود (نیاز به کلید معتبر SerpAPI دارد).

  • ورودی: نام کسب و کار از "Pull Sample Restaurants".
  • خروجی: پاسخ خام JSON از SerpAPI حاوی place_results و نظرات.
  • موارد لبه: محدودیت‌های نرخ API، کلید API نامعتبر، عدم یافتن نتایج، قطع شدن شبکه.

#### Cleans It Up

  • نوع: n8n-nodes-base.code
  • نقش: تجزیه پاسخ خام SerpAPI، استخراج فیلدهای مرتبط نظر و فیلتر کردن نظرات فاقد متن.
  • پیکربندی: کد سفارشی جاوا اسکریپت برای:

* دسترسی ایمن به place_results و نظرات.

* استخراج حداکثر ۱۰ نظر مرتبط برای هر کسب و کار.

* استخراج فیلدها: نام کسب و کار، متن نظر، امتیاز ستاره و تاریخ ارسال.

* ایجاد اشیاء JSON ساده شده برای هر نظر.

  • ورودی: پاسخ خام JSON از "Get Data".
  • خروجی: آرایه‌ای از اشیاء نظر پاکسازی شده.
  • موارد لبه: place_results گمشده، عدم وجود نظر، فیلدهای نظر فردی گمشده.

#### If review text is NOT empty

  • نوع: n8n-nodes-base.if
  • نقش: فیلتر کردن نظرات بر اساس وجود متن نظر.
  • پیکربندی: بررسی می‌کند که آیا فیلد reviewText یک رشته خالی نیست.
  • ورودی: اشیاء نظر پاکسازی شده از "Cleans It Up".
  • خروجی:

* شاخه True: نظرات دارای متن به "Analyze Review Sentiment" می‌روند.

* شاخه False: نظرات بدون متن به "Failed Reviews" می‌روند.

۳. تحلیل هوش مصنوعی

#### Analyze Review Sentiment

  • نوع: @n8n/n8n-nodes-langchain.openAi
  • نقش: استفاده از GPT-4 برای تحلیل احساسات نظر و استخراج کلمات کلیدی.
  • پیکربندی:

* مدل: gpt-4-turbo

* Prompt: قالبی که به هوش مصنوعی دستور می‌دهد احساسات را تجزیه و تحلیل کرده و ۳-۵ کلمه کلیدی/موضوع را از متن نظر استخراج کند و به نام کسب و کار اشاره کند. خروجی باید JSON با کلیدهای sentiment، keywords و restaurant (توجه داشته باشید املای صحیح) باشد.

* اعتبارنامه‌ها: به اعتبارنامه‌های OpenAI API نیاز دارد.

  • ورودی: نظرات با متن غیر خالی از گره "If" (شاخه true).
  • خروجی: نتایج تجزیه و تحلیل هوش مصنوعی (احساسات و کلمات کلیدی) برای هر نظر.
  • موارد لبه: محدودیت‌های نرخ API، ورودی بدشکل، خرابی API، خطاهای تجزیه JSON.

۴. خروجی داده

#### Export Data

  • نوع: n8n-nodes-base.googleSheets
  • نقش: افزودن نظرات با موفقیت تحلیل شده به یک Google Sheet.
  • پیکربندی:

* سند: همان سند Google Sheet ورودی.

* شیت: تب با شناسه 1346480145 (نام "table").

* ستون‌ها: نگاشت داده‌ها شامل امتیاز ستاره، نتایج تجزیه و تحلیل هوش مصنوعی (محتوای JSON)، نام کسب و کار و متن نظر.

* اعتبارنامه‌ها: Google Sheets OAuth2.

  • ورودی: نظرات تجزیه و تحلیل شده توسط هوش مصنوعی از "Analyze Review Sentiment".
  • خروجی: داده‌ها را به تب مشخص شده Google Sheet اضافه می‌کند.

#### Failed Reviews (e.g. review text = empty)

  • نوع: n8n-nodes-base.googleSheets
  • نقش: ثبت نظراتی که به دلیل خالی بودن متن نظر رد شده‌اند.
  • پیکربندی:

* سند: همان سند Google Sheet.

* شیت: تب با شناسه 1253412439 (نام "skipped reviews").

* ستون‌ها: شامل امتیاز ستاره، نام کسب و کار، متن نظر و علامت‌گذاری کلمات کلیدی/احساسات به عنوان "Skipped (no reviewText)".

* اعتبارنامه‌ها: Google Sheets OAuth2.

  • ورودی: نظرات فیلتر شده توسط گره "If" (شاخه false).
  • خروجی: داده‌ها را به تب Google Sheet "skipped reviews" اضافه می‌کند.

---

جدول خلاصه

نام نود (Node Name)نوع نود (Node Type)نقش عملکردی (Functional Role)نود(های) ورودی (Input Node(s))نود(های) خروجی (Output Node(s))ارجاع یادداشت چسبان (Sticky Note Reference)
Manual Triggern8n-nodes-base.manualTriggerشروع دستی گردش کارNonePull Sample Restaurantsبرای نمای کلی گردش کار و دستورالعمل‌های استفاده به Sticky Note1 مراجعه کنید.
Pull Sample Restaurantsn8n-nodes-base.googleSheetsخواندن لیست کسب‌وکارها از Google SheetsManual TriggerGet Dataبرای اسکرین‌شات ورودی نمونه به Sticky Note4 مراجعه کنید.
Get Datan8n-nodes-base.httpRequestفراخوانی SerpAPI برای دریافت داده‌های Google MapsPull Sample RestaurantsCleans It Upبرای توضیح مرحله ۱ (خراشیدن داده از Google Maps) به Sticky Note مراجعه کنید.
Cleans It Upn8n-nodes-base.codeتجزیه و پاک‌سازی پاسخ SerpAPI، استخراج نظراتGet DataIf review text is NOT emptyبرای توضیح پاک‌سازی و فیلتر کردن داده‌ها به Sticky Note2 مراجعه کنید.
If review text is NOT emptyn8n-nodes-base.ifفیلتر کردن نظرات بر اساس وجود متن نظرCleans It UpAnalyze Review Sentiment (true), Failed Reviews (false)برای منطق فیلتر کردن و مدیریت نظرات خالی به Sticky Note2 مراجعه کنید.
Analyze Review Sentiment@n8n/n8n-nodes-langchain.openAiاستفاده از GPT-4 برای تحلیل احساسات و کلمات کلیدیIf review text is NOT empty (true)Export Dataبرای مرحله تحلیل هوش مصنوعی به Sticky Note3 مراجعه کنید.
Export Datan8n-nodes-base.googleSheetsافزودن نظرات تحلیل‌شده به Google SheetsAnalyze Review SentimentNoneبرای اسکرین‌شات خروجی نمونه به Sticky Note5 مراجعه کنید.
Failed Reviews (e.g. review text = empty)n8n-nodes-base.googleSheetsثبت نظرات رد شده با متن گم شدهIf review text is NOT empty (false)Noneبرای مدیریت نظرات ناموفق/خالی به Sticky Note2 مراجعه کنید.
Sticky Note1n8n-nodes-base.stickyNoteنمای کلی گردش کار و دستورالعمل‌های کاربرNoneNoneشامل دستورالعمل‌های دقیق، نیازمندی‌ها و لینک‌های مفید است.
Sticky Noten8n-nodes-base.stickyNoteتوضیح مرحله ۱ (خراشیدن داده از Google Maps)NoneNoneN/A
Sticky Note2n8n-nodes-base.stickyNoteتوضیح مرحله ۲ (پاک‌سازی/فیلتر کردن داده)NoneNoneN/A
Sticky Note3n8n-nodes-base.stickyNoteتوضیح مرحله ۳ (تحلیل/خروجی)NoneNoneN/A
Sticky Note4n8n-nodes-base.stickyNoteاسکرین‌شات نمونه ورودی Google SheetsNoneNoneN/A
Sticky Note5n8n-nodes-base.stickyNoteاسکرین‌شات نمونه خروجی Google SheetsNoneNoneN/A

Nodeهای استفاده‌شده

سوالات متداول

این گردش کار چگونه نظرات گوگل را دریافت می‌کند؟

این گردش کار از SerpAPI برای دریافت خودکار نظرات کسب‌وکارها مستقیماً از Google Maps استفاده می‌کند.

نقش GPT-4 در این گردش کار چیست؟

GPT-4 برای تحلیل احساسات (مثبت، خنثی، منفی) و استخراج کلمات کلیدی مرتبط از متن نظرات استفاده می‌شود.

چگونه داده‌های ورودی و خروجی مدیریت می‌شوند؟

این گردش کار با Google Sheets ادغام می‌شود؛ لیست کسب‌وکارها از یک شیت خوانده شده و نظرات تحلیل‌شده به شیت دیگری اضافه می‌شوند.

آیا این گردش کار نظرات بدون متن را مدیریت می‌کند؟

بله، این گردش کار نظراتی را که فاقد محتوای متنی هستند فیلتر کرده و آنها را در یک تب جداگانه در Google Sheet ثبت می‌کند.

workflowهای مرتبط

این workflow در کاتالوگ Axeto.ai بایگانی شده است. لایسنس اصلی متعلق به سازنده workflow است.