actor_google-maps-scraper
Barchin actor 'google-maps-scraper' (maps). عبارت جستوجو و محدودهی مکانی را بدهید تا فهرست کسبوکارها را از گوگلمپس بگیرید: نام، دستهبندی، نشانی، تلفن، وبسایت، مختصات، امتیاز و تعداد نظر، ساعات کاری، امکانات، نظرها و تصاویر. ورودی و خروجی همشکل اکتور compass/crawler-google-places در اپیفای است. برای هر مکان یک ردیف برمیگردد. Base fee 30 credit(s) plus the proxy tier price per fetched page (datacenter 1, residential 15, unblocker 25, +5 with JavaScript). Call list_actors for the full input schema.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "actor_google-maps-scraper"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | فقط نام شهر، مثل «تهران» یا «Boston»؛ نام استان و کشور را اینجا ننویسید و در فیلد خودشان بدهید. بهجای «محل جستوجو». | |
| state | No | نام استان یا ایالت، مثل «تهران» یا «Massachusetts». بهجای «محل جستوجو». | |
| county | No | نام شهرستان یا ناحیه، مثل «شمیرانات». بهجای «محل جستوجو». | |
| website | No | فقط مکانهای دارای وبسایت، یا فقط مکانهای بدون وبسایت برگردند. پیشفرض همه. | allPlaces |
| language | No | زبانی که گوگل نام، دستهبندی، نشانی و نظرها را به آن برمیگرداند، مثل فارسی (fa) یا انگلیسی (en). فیلدهای «تعطیل دائم/موقت» فقط با انگلیسی (en) قابلاعتمادند: تشخیص از روی برچسب متنی گوگل است و با زبانهای دیگر (از جمله فارسی) عملاً همیشه false میماند. | en |
| placeIds | No | بهجای جستوجو، شناسهی مکان گوگل را بدهید، هر یک در یک خط، مثل ChIJJQz5EZzKw4kRCZ95UajbyGw (با ChIJ یا GhIJ شروع میشود). حداکثر 50 شناسه. هر شناسه یک درخواست اضافه برای تبدیل به شناسهی داخلی گوگل میزند و صفحهی جزئیات آن همیشه گرفته میشود. | |
| maxImages | No | ۰ یعنی هیچ. حداکثر 100. آدرس تصاویر (imageUrls) و تاریخ آپلود از صفحهی جزئیات خوانده میشوند، پس این گزینه صفحهی جزئیات را روشن میکند؛ درخواست جدایی برای تصاویر زده نمیشود و خود فایل تصویر دانلود نمیشود. | |
| startUrls | No | بهجای جستوجو، آدرس صفحهی مکانهای مشخص در گوگلمپس را بدهید، هر آدرس در یک خط، مثل https://www.google.com/maps/place/?q=place_id:ChIJJQz5EZzKw4kRCZ95UajbyGw. آدرس باید شناسهی مکان (place_id، cid یا fid) داشته باشد؛ لینک کوتاه goo.gl را اول در مرورگر باز کنید و آدرس کامل را بدهید. حداکثر 50 آدرس. برای هر آدرس صفحهی جزئیات همیشه گرفته میشود. | |
| maxReviews | No | ۰ یعنی هیچ نظری. حداکثر 100. نظرها از صفحهی جزئیات خوانده میشوند، پس این گزینه صفحهی جزئیات را هم روشن میکند. گوگل حدود ۵ نظر را همراه صفحه میدهد و عدد بزرگتر بیشتر از آن نمیآورد؛ این گزینه سقف است، نه هدف. گوگل گاهی نظرها را نمیفرستد و اکتور تا 3 بار دوباره میپرسد (در سنجش ما برای ۹ مکان از ۱۰ نظر برگشت)، پس با نظر، هر مکان تا 3 درخواست هزینه دارد. برای نظرهای یک مکان مشخص، اکتور «استخراج نظرهای گوگلمپس» را ببینید. | |
| postalCode | No | یک کد پستی، مثل 10001. فقط با «کشور» ترکیب کنید، نه با شهر؛ هر اجرا یک کد. بهجای «محل جستوجو». | |
| countryCode | No | کد دوحرفی کشور برای محدود کردن جستوجو، مثل ir یا us — بهجای «محل جستوجو» و همراه شهر/استان/کد پستی. اگر «محل جستوجو» پر باشد، نادیده گرفته میشود. | |
| reviewsSort | No | نظرهای هر مکان با این ترتیب برمیگردند و سقف «تعداد نظر» روی همین ترتیب اعمال میشود؛ پیشفرض جدیدترین. توجه: چون گوگل خودش فقط همان حدود ۵ نظر درونخطی صفحه را میدهد (رجوع به توضیح «تعداد نظر»)، این گزینه فقط همان چند نظر را دوباره میچیند و گوگل را برای نظر تازه یا کمستارهی دیگری کوئری نمیزند. | newest |
| autoGeoSplit | No | غیرفعال بهصورت پیشفرض و روی هزینهی اجرا اثر مستقیم دارد؛ فقط وقتی لازم است که یک عبارت در «محل جستوجو»/«محدودهی دلخواه» میتواند بیش از ۱۶۱ تا ۲۰۰ نتیجه داشته باشد — همان سقفی که گوگل برای هر ویوپورت میگذارد (توضیح «حداکثر تعداد مکان برای هر عبارت» را ببینید). روشن کردنش با {"maxTiles": 9} محدوده را به یک شبکهی ثابت تقسیم میکند و هر بخش را جدا جستوجو میکند؛ تعداد بخشها برابر floor(sqrt(maxTiles))² است، یعنی ۴ تا ۸ یک شبکهی ۲×۲ (۴ بخش) میسازد، ۹ یک شبکهی ۳×۳ (۹ بخش)، و 16 — سقف غیرقابلعبور این نسخه — یک شبکهی 4×4 (16 بخش). کمتر از 4 هیچ شکافتی نمیدهد. هزینهی اجرا دقیقاً به همین نسبت زیاد میشود — یک اجرای ۹بخشی حدود ۹ برابر همان اجرای بدون شکافتن هزینه دارد — و این هزینه پیش از اجرا در page_budget محاسبه و نشان داده میشود، نه در میانهی کار. بخشهای همسایه ۱۰٪ همپوشانی دارند تا مکانی که روی مرز دو بخش است از قلم نیفتد؛ چنین مکانی حذف نمیشود، فقط در ردیف دوم isDuplicate=true و duplicateOfPlaceId میخورد — شمردن ردیفهای isDuplicate=true در خروجی نشان میدهد همپوشانی واقعاً کار کرده. فقط روی «عبارتهای جستوجو» اثر دارد؛ برای placeIds/startUrls (که خودشان یک مکان مشخصاند، نه یک محدوده) و بدون هیچکدام از «محل جستوجو»/شهر/استان/کشور/«محدودهی دلخواه» (که یعنی جستوجو در کل جهان) بیاثر است. | |
| maxQuestions | No | ۰ یعنی هیچ. حداکثر 50. پرسشوپاسخهای زیر صفحهی مکان از صفحهی جزئیات خوانده میشوند و آن را روشن میکنند. | |
| locationQuery | No | محدودهی جستوجو بهصورت متن آزاد، مثل «تهران، ایران» یا «Berlin, Germany». هرچه سادهتر، بهتر: نام شهر و کشور کافی است. خالی یعنی جستوجو در کل جهان. اگر این پر شود، فیلدهای کشور/استان/شهر/کد پستی در تنظیمات پیشرفته نادیده گرفته میشوند. برای پیدا کردن محل یک درخواست زده میشود. | |
| reviewsOrigin | No | گوگل زیر بعضی مکانها (مثل هتلها) نظرهای سایتهای دیگر را هم نشان میدهد؛ «فقط نظرهای خود گوگل» آنها را حذف میکند. | all |
| searchMatching | No | نام مکان چقدر باید با عبارت جستوجو بخواند. پیشفرض همهی نتایج گوگل؛ دو گزینهی دیگر برای وقتی است که نام یک برند مشخص را جستوجو میکنید و مکانهای مشابه را نمیخواهید. | all |
| statusCheckOnly | No | برای پایش دورهای «شناسههای مکان»/«آدرسهای گوگلمپس» از قبل شناختهشده: فقط نام، مختصات و وضعیت تعطیلی برمیگردد؛ تصویر، نظر، پرسشوپاسخ و لینکهای رزرو/سفارش خاموش میشوند (حتی اگر جدا روشن شده باشند) و نیمی از درخواستهای جزئیات هر مرجع مستقیم (placeId/startUrl) هم حذف میشود — آن درخواست دوم فقط برای تعداد/توزیع نظر و امتیاز دقیقتر بود که این حالت اصلاً نمیخواهد. روی عبارتهای جستوجو اثری ندارد (آنها از ابتدا فقط یک درخواست جزئیات دارند). | |
| reviewsStartDate | No | فقط نظرهایی که از این تاریخ به بعد نوشته شدهاند. تاریخ میلادی مثل 2024-05-03، یا بازهی نسبی به انگلیسی مثل «8 days» یا «3 months». خالی یعنی بدون محدودیت. توجه: این فقط همان حدود ۵ نظر درونخطیِ از قبل گرفتهشده را فیلتر میکند؛ اگر هیچکدام از آنها در این بازه نباشند، حتی اگر مکان نظر تازهتری هم روی گوگل داشته باشد، نتیجه صفر میشود — نه اینکه اکتور نظر تازهتری از گوگل بگیرد. | |
| skipClosedPlaces | No | مکانهایی که گوگل «بهطور دائم تعطیل» یا «بهطور موقت تعطیل» علامت زده حذف شوند. تشخیص از روی برچسب متنی گوگل است؛ فقط با «زبان نتایج» = انگلیسی (en) کار میکند، با زبانهای دیگر (از جمله فارسی) این فیلتر عملاً هیچ مکانی را حذف نمیکند. | |
| customGeolocation | No | محدودهی جستوجو به شکل GeoJSON، بهجای «محل جستوجو»: یک Point با radiusKm، مثل {"type": "Point", "coordinates": [51.389, 35.689], "radiusKm": 5}، یا Polygon/MultiPolygon. چندضلعی به مرکز و شعاع کادر محیطیاش تبدیل میشود، چون جستوجوی گوگل محدودهی دایرهای میگیرد. برای این محدوده درخواست مکانیابی زده نمیشود. | |
| includeWebResults | No | بخش «Web results» پایین صفحهی مکان (عنوان و لینک) در webResults برگردد. | |
| placeMinimumStars | No | فقط مکانهایی با امتیاز مساوی یا بالاتر از این مقدار. مکانهای بدون امتیاز هم حذف میشوند. خالی یعنی بدون حداقل. | |
| scrapeOrderOnline | No | سرویسهای ارسال و بیرونبر متصل به مکان (مثل اسنپفود یا Uber Eats) در bookingLinks برگردد. | |
| searchStringsArray | No | همان چیزی که در کادر جستوجوی گوگلمپس مینویسید، هر عبارت در یک خط، مثل «رستوران» یا «کافه». حداکثر 10 عبارت در هر اجرا؛ هر عبارت جداگانه در «محل جستوجو» جستوجو میشود و برای هر مکان یک ردیف برمیگردد. یا بهجای جستوجو، «آدرسهای گوگلمپس» یا «شناسههای مکان» را در تنظیمات پیشرفته بدهید. | |
| categoryFilterWords | No | فقط مکانهایی که دستکم یکی از این دستهبندیها را دارند، هر دسته در یک خط و همانطور که گوگل نشان میدهد، مثل «Restaurant» یا «کافه». بسیاری از کسبوکارها دستهبندی خود را درست ثبت نکردهاند، پس این فیلتر ممکن است نتایج درست را هم حذف کند. خالی یعنی همه. | |
| reviewsFilterString | No | فقط نظرهایی که این عبارت در متنشان هست، مثل «delivery» یا «قیمت». خالی یعنی همه. این هم فقط روی همان حدود ۵ نظر درونخطی اعمال میشود، نه کل نظرهای مکان روی گوگل. | |
| scrapePlaceDetailPage | No | برای هر مکان یک درخواست اضافه میزند و توزیع امتیازها، ساعات کاری کامل، امکانات، پلاسکد و توضیح گوگل را میآورد. بدون آن فقط فهرست نتایج (نام، دسته، نشانی، تلفن، سایت، مختصات، امتیاز) برمیگردد. اگر تعداد نظر، تصویر یا پرسشوپاسخ بدهید، خودکار روشن میشود. | |
| maxCrawledPlacesPerSearch | No | سقف تعداد مکانهایی که برای هر عبارت برمیگردد. گوگل 20 مکان در هر صفحه میدهد و به ازای هر 20 مکان یک صفحهی نتایج باز میشود؛ هر چه بیشتر، صفحات بیشتری باز و کردیت بیشتری کسر میشود. مجموع همهی عبارتها حداکثر 200 مکان در هر اجرا. این سقف اکتور نیست: گوگل خودش برای یک عبارت روی یک ویوپورت را — صرفنظر از این عدد — جایی بین ۱۶۱ تا ۲۰۰ مکان متوقف میکند و صفحهی بعدی را نمیدهد. اکتور بهصورت پیشفرض محدوده را خودکار به بخشهای کوچکتر نمیشکند؛ برای پوشش یک دستهی پرتراکم در یک شهر بزرگ (که میتواند هزاران نتیجه داشته باشد) یا خودتان چند اجرا با «محدودهی دلخواه» روی نواحی کوچکتر بزنید، یا در تنظیمات پیشرفته «شکافتن خودکار محدوده» را روشن کنید. | |
| scrapeReviewsPersonalData | No | نام، شناسه، آدرس پروفایل و عکس نویسندهی نظر (فیلدهای name، reviewerId، reviewerUrl و reviewerPhotoUrl) برگردد. شناسهی خود نظر (reviewId) مستقل از این گزینه همیشه برمیگردد. ⚠️ دادهی شخصی است؛ مسئولیت استفاده و انطباق با قوانین حفاظت از داده با شماست. | |
| scrapeTableReservationProvider | No | برای رستورانهایی که دکمهی رزرو دارند، نام و لینک سرویس رزرو در tableReservationLinks برگردد. |