
Zomato Restaurant Scraper - City, Cuisine, Contact
io.github.AnshumanAtrey由 GitHub 账号 AnshumanAtrey 发布v1.0.6更新于 Oct 30, 2026
Zomato Restaurant Scraper - City, Cuisine, Phone
发布方自己的服务:Zomato
概览
托管在 Apify 上的抓取工具,让助手按城市和菜系抓取 Zomato 餐厅列表,输出含联系方式的结构化记录。
- 可以做什么
- 按城市、列表类型和菜系运行 Zomato 餐厅列表抓取,并可设定最多抓取多少家餐厅。
- 获取每家餐厅的结构化记录:名称、链接、电话、地址、菜系、评分、人均消费、城市和区域。
- 读取每次运行的汇总记录,包含已抓取数、发现数、失败数、耗时和来源链接。
- 通过覆盖参数指定预设列表之外的城市、菜系,或直接给出一条 Zomato 列表链接。
- 可选择扫描深度,从仅取链接和名称到带额外重试的完整详情。
- 适用场景
- 适合需要助手建立或更新餐厅线索名单、比较不同城市或菜系、收集竞品与市场数据的场景,且无需 Zomato 账号。面向销售、餐饮科技研究和获客流程,而非菜单或单品数据。
- 运行要求
- 远程 MCP 端点 mcp.apify.com,使用 streamable HTTP,需通过 Authorization 请求头以 Bearer 加 Apify API 令牌的形式认证。运行费用计入该 Apify 账户;无需 Zomato 账号。
安装
在 SourceWeft 中
- 打开 控制台中的 Zomato Restaurant Scraper - City, Cuisine, Contact,将其添加到工作区。
- 连接 所需的 凭据。它们会被私密存储,绝不会在公开页面上展示。
- 为需要使用其工具的对话启用该服务。
Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。
交给智能体安装
把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。
阅读 https://sourceweft.com/mcp/io.github.AnshumanAtrey%2Fzomato-restaurant-scraper/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。其他 MCP 客户端
把它添加到你客户端的 mcpServers 配置中。 客户端会在首次连接时完成 OAuth 登录。
{
"mcpServers": {
"zomato-restaurant-scraper-city-cuisine-c": {
"type": "http",
"url": "https://mcp.apify.com/?tools=anshumanatrey/zomato-restaurant-scraper"
}
}
}README
Zomato Restaurant Scraper
📦 Open source · MIT: github.com/AnshumanAtrey/zomato-restaurant-scraper
Scrape restaurant listings from Zomato by city and cuisine. Get structured records with name, phone, address, cuisines, rating, and cost for two — no Zomato account required.
Built for B2B sales teams, food-tech researchers, ghost-kitchen operators, lead-gen agencies, and competitor intelligence.
Quick start
- Pick a City from the dropdown (Bangalore, Delhi NCR, Mumbai, Dubai, Singapore, etc. — 40 cities)
- Pick a Listing Type (Best, All, Dinner, Breakfast)
- Optionally pick a Cuisine filter (Biryani, Pizza, North Indian, Chinese, etc. — 24 options)
- Set how many restaurants you want (default 50, up to 1000)
- Click Run
A 50-restaurant scan takes one to one and a half minutes on Apify at the default 1 GB of memory (63 to 90 seconds in three runs, 2026-10-30).
What you get
Each restaurant is pushed as one dataset record:
A final summary record reports restaurantsScraped, restaurantsFound, failures, duration, and sourceUrls.
Common use cases
Build a B2B restaurant lead list
Pick Mumbai, Best restaurants, maxRestaurants: 200. Export the CSV. You now have 200 verified phone numbers + addresses for outreach.
Scrape a specific cuisine in a specific city
Pick Hyderabad, All restaurants, Cuisine: Biryani, maxRestaurants: 100.
Scrape a city not in the dropdown
Use the Custom city field under "Advanced overrides". Type Tirunelveli, Erode, Coorg, Manali, Madurai, Varanasi — auto-converted to the right Zomato URL.
Scrape a category not in the dropdown
Use the Custom cuisine field. Momos, Kebab, Hyderabadi, Awadhi all work.
Scrape an exact Zomato URL you already have
Paste it into Custom URL under "Advanced overrides". Overrides every other dropdown.
Inputs
Main fields
- City — Pick from 40 Zomato cities across India, UAE, Qatar, Oman, Malaysia, Singapore, Philippines, Sri Lanka, Portugal
- Listing Type —
Best restaurants(curated top picks),All restaurants,Dinner spots, orBreakfast spots - Cuisine — Optional filter across 24 cuisine categories, or "Any" for no filter
- How many restaurants — Cap on results (1-1000). Start with 20-50 to verify, then scale up
- Scan depth:
Quick— restaurant URLs + names only (fast, cheap, useful for bulk URL lists)Standard— full data: phone, address, rating, cost (default — recommended for B2B leads)Deep— full data with extra retries for blocked pages (slowest, highest yield)
Advanced overrides (optional)
- Custom city — Type any Zomato city not in the dropdown. Auto-slugified
- Custom cuisine — Type any Zomato cuisine category not in the dropdown
- Custom URL — Paste any Zomato listing URL to scrape it directly. Overrides everything above
Runtime
- Run timeout (seconds) — Hard kill after this many seconds (default 1800 = 30 min)
How it works
- Listing page: navigates to the constructed Zomato URL, scrolls to load lazy content, extracts all restaurant detail URLs (handles both
/infoand/orderURL patterns) - Detail pages: visits each restaurant page concurrently using fast HTTP fetches (Cheerio) — typically 5-10x faster than full browser rendering
- Auto-fallback: if the primary URL returns 0 restaurants, automatically retries
/{city}/restaurantsas a fallback
Uses Apify Residential Proxy to avoid rate-limit issues.
Pricing
$0.005 per restaurant record. A typical 50-restaurant scan costs ~$0.26: 50 restaurant records plus the run's one summary record, which is charged as a record too. On paid Apify plans a record is $0.0045 on Scale and $0.004 on Business and above.
FAQ
Does it scrape menu items / dishes?
No — it scrapes restaurant listings (name, phone, address, etc.), not menus. For menu data, use a different actor that hits individual restaurant pages with menu rendering.
Can I scrape "Dahi Puri" or "Tandoor"?
Zomato organizes by cuisine category, not by individual dish. Specific dishes like dahi-puri don't have their own URL on Zomato. Use a broader category like Street Food or North Indian instead.
Can I scrape an entire state like "Tamil Nadu"?
Zomato has no state-level URLs. Pick a specific city instead — e.g., for Tamil Nadu use Chennai, Coimbatore, or custom-city Madurai/Tirunelveli.
Does it work for cities outside the dropdown?
Yes. Use the Custom city field with the city name — Erode, Coorg, Manali, Varanasi, etc. The actor auto-slugifies and auto-falls-back to /{city}/restaurants if /best-restaurants doesn't exist for that smaller city.
Why didn't I get any results?
Most likely causes:
- Off-list cuisine combined with quick scan — try
Standarddepth - City has no listings for that cuisine — try removing the cuisine filter
- Custom URL is malformed — paste it in a browser first to verify
What about international cities?
Dubai, Abu Dhabi, Sharjah (UAE), Doha (Qatar), Muscat (Oman), Kuala Lumpur (Malaysia), Singapore, Manila, Colombo, Lisbon are in the dropdown. Other Zomato international cities (e.g., Sydney, Auckland) work via the Custom city field.
Is the data accurate / fresh?
Pulled live from Zomato at run time. Phone numbers and addresses are exactly what Zomato displays today. Ratings may lag slightly behind Zomato's internal scoring.
Is this legal?
Scrapes only publicly visible data on Zomato. You are responsible for complying with Zomato's Terms of Service, GDPR/DPDP, and local laws. Don't use phone numbers for mass cold-calling without consent.
Output structure
Plus one summary record per run:
Pairs nicely with
Enrich your restaurant lead lists with deeper intel:
- Holehe Email OSINT — After scraping restaurant emails from their websites, check which platforms each restaurant owner is on
- NetIntel — WHOIS, DNS, SSL, GeoIP of each restaurant's website
- Social Analyzer — Find a restaurant brand's social media presence across 900+ platforms
- theHarvester — Discover all subdomains + emails for a restaurant chain's primary domain
- nmap — Network recon (for IT/security workflows, not lead-gen)
- Bug Bounty Finder — Audit a restaurant chain's disclosure-program coverage
Credits
Built by Anshuman Atrey using Apify SDK, Crawlee, Puppeteer, and Cheerio.
Disclaimer
This scraper accesses publicly available data on Zomato. You are responsible for complying with Zomato's Terms of Service and applicable laws in your jurisdiction. Use the data responsibly — avoid mass cold-calling without consent.
来源:README.md,提交 9e9efbb
工具
0版本历史
3- v1.0.6最新Oct 30, 2026
- v1.0.3Oct 29, 2026
- v1.0.2Sep 24, 2026
评分
已满足适用检查项的 85%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通必需25 分
- 已声明认证方式必需10 分
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分
