mcpField
Z
Zomato Restaurant Scraper - City, Cuisine, Contact

Zomato Restaurant Scraper - City, Cuisine, Contact

远程服务
apify.com商业与营销05 周前更新

关于 Zomato Restaurant Scraper - City, Cuisine, Contact

这款开源 Apify Actor 按城市、餐饮类别和菜系抓取 Zomato 餐厅列表,面向销售团队、餐饮科技研究者及竞品分析人员。它输出包含联系方式、地址、评分和双人消费等字段的结构化记录,并支持自定义城市、菜系或 URL。

主要功能

  1. 01按城市和菜系筛选餐厅
  2. 02支持多种列表类型
  3. 03抓取电话、地址和评分
  4. 04快速、标准及深度扫描
  5. 05自定义城市、菜系或 URL
  6. 06输出餐厅记录及运行摘要

适用场景

  1. 01建立餐厅销售线索名单
  2. 02研究特定城市的菜系餐厅
  3. 03比较不同地区的餐厅信息
  4. 04抓取自定义 Zomato 列表

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://mcp.apify.com/?tools=anshumanatrey/zomato-restaurant-scraper
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

全部服务地址
Streamable HTTPhttps://mcp.apify.com/?tools=anshumanatrey/zomato-restaurant-scraper需要授权

工具

详细介绍

Zomato 餐厅抓取工具

📦 开源 · MIT: github.com/AnshumanAtrey/zomato-restaurant-scraper

按城市和菜系抓取 Zomato 上的餐厅列表。获取包含名称、电话、地址、菜系、评分和双人用餐价格的结构化记录——无需 Zomato 账号。

适用于 B2B 销售团队、食品科技研究人员、幽灵厨房运营者、潜在客户开发机构和竞争情报团队。

快速开始

  1. 从下拉菜单中选择城市(Bangalore、Delhi NCR、Mumbai、Dubai、Singapore 等,共 40 个城市)
  2. 选择列表类型(Best、All、Dinner、Breakfast)
  3. 可选:选择菜系筛选条件(Biryani、Pizza、North Indian、Chinese 等,共 24 种)
  4. 设置要抓取的餐厅数量(默认 50,最多 1000)
  5. 点击运行

抓取 50 家餐厅通常需要 3-7 分钟。

可获取的数据

每家餐厅会作为一条数据集记录推送:

字段示例
nameTruffles
urlhttps://www.zomato.com/bangalore/truffles-st-marks-road-central-bangalore/info
slugtruffles-st-marks-road-central-bangalore
phone+91 80 4111 2400
address22, St Marks Road, Bangalore
cuisinesAmerican, Burger, Continental
rating4.5
costForTwo₹800
citybangalore
areaCentral Bangalore
timestamp2026-05-22T09:43:18Z

最后一条 summary 记录会报告 restaurantsScraped、restaurantsFound、failures、duration 和 sourceUrls。

常见用途

构建 B2B 餐厅潜在客户名单

选择 Mumbai、Best restaurants、maxRestaurants: 200。导出 CSV,即可获取 200 个经过验证的电话号码和地址,用于客户拓展。

抓取特定城市的特定菜系

选择 Hyderabad、All restaurants、Cuisine: Biryani、maxRestaurants: 100。

抓取下拉菜单中没有的城市

使用“Advanced overrides”下的自定义城市字段。输入 Tirunelveli、Erode、Coorg、Manali、Madurai、Varanasi——系统会自动转换为正确的 Zomato URL。

抓取下拉菜单中没有的类别

使用自定义菜系字段。Momos、Kebab、Hyderabadi、Awadhi 均可使用。

抓取已有的 Zomato 精确 URL

将其粘贴到“Advanced overrides”下的自定义 URL字段。此设置会覆盖其他所有下拉菜单选项。

输入项

主要字段
  • 城市 — 从印度、阿联酋、卡塔尔、阿曼、马来西亚、新加坡、菲律宾、斯里兰卡和葡萄牙的 40 个 Zomato 城市中选择
  • 列表类型 — Best restaurants(精选推荐)、All restaurants、Dinner spots 或 Breakfast spots
  • 菜系 — 可选筛选条件,涵盖 24 种菜系;选择“Any”则不筛选
  • 餐厅数量 — 结果上限(1-1000)。先从 20-50 家开始验证,再扩大规模
  • 抓取深度:
    • Quick — 仅抓取餐厅 URL 和名称(速度快、成本低,适用于批量获取 URL 列表)
    • Standard — 完整数据:电话、地址、评分、价格(默认选项,推荐用于 B2B 潜在客户开发)
    • Deep — 完整数据,并针对被拦截的页面进行额外重试(速度最慢,产出最高)
高级覆盖选项(可选)
  • 自定义城市 — 输入下拉菜单中没有的任意 Zomato 城市。系统会自动转换为 slug 格式
  • 自定义菜系 — 输入下拉菜单中没有的任意 Zomato 菜系类别
  • 自定义 URL — 粘贴任意 Zomato 列表 URL,直接抓取该页面。此设置会覆盖以上所有选项
运行时
  • 运行超时(秒) — 达到设定时长后强制终止(默认值为 1800 = 30 分钟)

工作原理

  1. 列表页:导航至构建好的 Zomato URL,滚动页面以加载延迟内容,并提取所有餐厅详情 URL(同时支持 /info 和 /order URL 模式)
  2. 详情页:通过快速 HTTP 请求(Cheerio)并发访问每家餐厅的页面,通常比完整浏览器渲染快 5~10 倍
  3. 自动回退:如果主 URL 返回的餐厅数量为 0,则自动重试 /{city}/restaurants 作为回退方案

使用 Apify Residential Proxy 避免触发速率限制。

定价

每条餐厅记录 $0.005。 一次典型的 50 家餐厅扫描费用约为 $0.26。

扫描规模预计费用
20 家餐厅$0.10
50 家餐厅$0.25
100 家餐厅$0.50
500 家餐厅$2.50
1000 家餐厅$5.00

常见问题

它会抓取菜单菜品吗?

不会——它抓取的是餐厅列表(名称、电话、地址等),而不是菜单。要获取菜单数据,请使用另一个会访问单家餐厅页面并渲染菜单的 actor。

我可以抓取「Dahi Puri」或「Tandoor」吗?

Zomato 按菜系类别而非具体菜品进行分类。dahi-puri 等具体菜品在 Zomato 上没有专属 URL。请改用更宽泛的类别,例如街头小吃或北印度菜。

我可以抓取整个「Tamil Nadu」邦吗?

Zomato 没有邦级 URL。请改为选择具体城市——例如,在 Tamil Nadu 可使用 Chennai、Coimbatore,或自定义城市 Madurai/Tirunelveli。

它可以用于下拉列表中没有的城市吗?

可以。使用自定义城市字段并填写城市名称——例如 Erode、Coorg、Manali、Varanasi 等。该 actor 会自动将城市名转换为 URL slug;如果较小城市不存在 /best-restaurants,则自动回退到 /{city}/restaurants。

为什么没有获取到任何结果?

最可能的原因:

  • 不在列表中的菜系与快速扫描搭配使用——请尝试 Standard 深度
  • 该城市没有此菜系的列表——请尝试移除菜系筛选条件
  • 自定义 URL 格式错误——先在浏览器中粘贴并验证
国际城市呢?

下拉列表中包含 Dubai、Abu Dhabi、Sharjah(UAE)、Doha(Qatar)、Muscat(Oman)、Kuala Lumpur(Malaysia)、Singapore、Manila、Colombo 和 Lisbon。其他 Zomato 国际城市(如 Sydney、Auckland)可通过自定义城市字段使用。

数据准确且及时吗?

数据会在运行时从 Zomato 实时获取。电话号码和地址与 Zomato 当前显示的内容完全一致。评分可能会略微滞后于 Zomato 的内部评分。

这样合法吗?

仅抓取 Zomato 上公开可见的数据。你有责任遵守 Zomato 的服务条款、GDPR/DPDP 以及当地法律。未经同意,请勿将电话号码用于大规模陌生电话营销。

输出结构

{
  "recordType": "restaurant",
  "name": "Truffles",
  "url": "https://www.zomato.com/bangalore/truffles-st-marks-road-central-bangalore/info",
  "slug": "truffles-st-marks-road-central-bangalore",
  "phone": "+91 80 4111 2400",
  "address": "22, St Marks Road, Bangalore",
  "cuisines": ["American", "Burger", "Continental"],
  "rating": 4.5,
  "costForTwo": "₹800",
  "city": "bangalore",
  "area": "Central Bangalore",
  "timestamp": "2026-05-22T09:43:18Z"
}

每次运行还会生成一条 summary 记录:

{
  "recordType": "summary",
  "restaurantsScraped": 50,
  "restaurantsFound": 52,
  "failures": 2,
  "duration": 287,
  "sourceUrls": ["https://www.zomato.com/bangalore/best-restaurants"]
}

搭配使用

为餐厅潜在客户名单补充更深入的信息:

  • Holehe Email OSINT — 从餐厅网站抓取电子邮件后,检查每位餐厅经营者使用了哪些平台
  • NetIntel — 查询每家餐厅网站的 WHOIS、DNS、SSL 和 GeoIP 信息
  • Social Analyzer — 查找餐厅品牌在 900 多个平台上的社交媒体信息
  • theHarvester — 查找餐饮连锁主要域名的所有子域名和电子邮件
  • nmap — 网络侦察(适用于 IT/安全工作流,不适用于潜在客户开发)
  • Bug Bounty Finder — 审查餐饮连锁的漏洞披露计划覆盖情况

致谢

由 Anshuman Atrey 使用 Apify SDK、Crawlee、Puppeteer 和 Cheerio 构建。

免责声明

此抓取工具会访问 Zomato 上公开可用的数据。您有责任遵守 Zomato 的服务条款以及您所在司法管辖区的适用法律。请负责任地使用这些数据——未经同意,请勿进行大规模冷呼叫。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。