
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 分
