mcpField
R
restaurant-food-delivery-research

restaurant-food-delivery-research

github.com/crawlora-org生产力144 次安装2 天前更新
代码仓库

关于 restaurant-food-delivery-research

restaurant-food-delivery-research 用于查询餐厅评价、预订、菜单、外卖列表和杂货。它通过 Crawlora 汇总 Yelp、OpenTable、DoorDash、Uber Eats 和 Instacart 的规范化 JSON;许多查询需要地点或门店信息。

主要功能

  1. 01搜索餐厅及评价
  2. 02查询预订可用情况
  3. 03查看外卖菜单与列表
  4. 04按门店搜索杂货
  5. 05基于位置查询平台内容

适用场景

  1. 01比较附近外卖选项和价格
  2. 02预订前查看餐厅评价
  3. 03查找门店并浏览杂货商品

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/crawlora-org/crawlora-skills --skill restaurant-food-delivery-research

安装后在 Claude Code 中输入/restaurant-food-delivery-research确认已加载。

附带文件reference/endpoints.mdscripts/crawlora.sh

详细介绍

餐厅与外卖调研

通过 Crawlora API,以规范化的 JSON 格式查询餐厅评价、预订和外卖菜单,并跨餐厅、外卖和杂货平台搜索商品——无需抓取外卖应用页面。

何时使用此技能

  • “这家餐厅有哪些评价/菜单?”(Yelp、OpenTable)
  • “能预订 的座位吗?”(OpenTable 可订情况)
  • “我附近有哪些外卖可选?”(DoorDash、Uber Eats)
  • “这家餐厅的外卖菜单上有什么/这道菜多少钱?”
  • “在这家 Instacart 商店搜索杂货。”

设置(仅需一次)

  • 在 https://crawlora.net 获取免费的 Crawlora API 密钥(每月 2,000 个积分,无需银行卡)。
  • 运行辅助脚本前,将 CRAWLORA_API_KEY 设置到环境变量中。
  • 辅助脚本会从环境变量读取 CRAWLORA_API_KEY,并向 https://api.crawlora.net/api/v1 发送请求。密钥缺失或无效时会返回 401。

工作原理

这些平台大多受地理位置限制——每次搜索/商店查询都需要 latitude/longitude(或 postal_code),不能只提供关键词。

  1. Yelp — 使用 /yelp/search(term+location)搜索,或先通过 /yelp/geocode 对地址进行地理编码;使用 /yelp/business/{id} 获取详情,/reviews(以及 /reviews/search、/reviews/highlights)获取评价,/menu 获取菜单,/photos 获取照片。
  2. OpenTable — 使用 /opentable/search(term+latitude+longitude)查找餐厅,然后调用 /opentable/restaurant(restaurant_id;可选提供 date_time+party_size 以获取可订情况),以及 /menus、/reviews。
  3. DoorDash — 使用 /doordash/search(必填 query+latitude+longitude),或使用 /doordash/feed//doordash/explore 浏览附近的餐厅;使用 /doordash/store/{store_id}(以及 /menu、/info、/reviews)查询某家餐厅——每次查询商店也都需要 latitude+longitude。
  4. Uber Eats — 使用 /ubereats/search(必填 latitude+longitude,可选 query)或 /ubereats/feed;使用 /ubereats/store/{store_id}(以及 /menu、/reviews)查询商店。
  5. Instacart — 先通过 /instacart/stores(postal_code)查找商店,以获取其 shop_id/store_slug,然后使用 /instacart/search(shop_id+store_slug+q)搜索商品关键词建议,使用 /instacart/departments 获取其分类目录,或使用 /instacart/trending(postal_code)查询热门商品。

完整的端点列表、方法和参数:reference/endpoints.md。

调用 API

# Yelp:
scripts/crawlora.sh /yelp/search term="ramen" location="San Francisco, CA" | jq '.'

# DoorDash (lat/lon required):
scripts/crawlora.sh /doordash/search query="pizza" latitude=37.7749 longitude=-122.4194 | jq '.'

# OpenTable:
scripts/crawlora.sh /opentable/search term="Italian" latitude=37.7749 longitude=-122.4194 | jq '.'

# Instacart (resolve store first):
scripts/crawlora.sh /instacart/stores postal_code=94103 | jq '.'

所有请求都使用 scripts/crawlora.sh,这样 API 密钥就不会出现在命令行参数中。

端点参考

完整支持的餐厅、连锁店菜单、外卖和杂货目录,请参阅 reference/endpoints.md。

示例

  • 跨应用比较外卖: 使用相同坐标和菜系查询 /doordash/search 与 /ubereats/search,比较返回的餐厅和价格。
  • 餐厅背景调查: 预订前查看 /yelp/business/{id}(评分、评价精选)和 /opentable/restaurant/reviews。
  • 采购杂货: 使用 /instacart/stores 查找最近的商店,然后通过 /instacart/departments 浏览其分类。

注意事项与限制

  • **点数 / 成功后付费:**仅在返回 2xx 时计费;免费额度为每月 2,000 点数。 在 https://crawlora.net 获取密钥。
  • 仅限公开数据——公开的列表、菜单和评论页面;不会执行下单或付款操作。
  • **安全性:**密钥仅保存在 CRAWLORA_API_KEY 中——切勿将其硬编码、放入查询参数或提交。
  • 必须提供位置,不可省略,适用于 DoorDash、Uber Eats 和 OpenTable 的搜索 / 门店调用——如果只有街道地址,请先对地址进行地理编码(例如使用 /yelp/geocode 或 web-utilities-research 中的 geocoding_* 端点)。
  • Instacart 按门店限定范围——在 search/item/departments 能正常使用之前,需要先从 /instacart/stores 获取 shop_id+store_slug。

评论

支持 Markdown