如果你向餐厅销售产品——送餐技术、营销服务、POS 系统、忠诚度应用——你一定知道最麻烦的第一步:找到餐厅。不是随便找餐厅,而是真正匹配你 ICP 的餐厅:特定菜系、特定城市、在 UberEats 上线。
常规流程通常是:打开 UberEats,在某个城市搜索“pizza”,滚动页面,把名称和 URL 复制到电子表格,再切换城市,重复操作。对于覆盖 20 个城市的区域,这意味着在你发送第一封邮件前,就已经耗费了整整一下午。
我厌倦了手动操作,于是用 Apify 上的 UberEats Stores Search by Location and Keyword 角色实现了自动化——大约 10 分钟就搭建起一套真正的线索列表管道。
思路
该角色只需两个简单输入——一份外卖地址列表和一个搜索关键词——就能返回每家匹配店铺的结构化数据:名称、UberEats URL、评分、评分数量、预计送达时间、城市和图片。无需浏览器、无需手动滚动、无需解析 HTML。
对于线索生成而言,这意味着:选择目标城市、输入关键词(一种菜系,或甚至是竞争对手的品牌名称,以找到尚未采用该技术的餐厅),就能得到一份干净的数据集,可直接筛选并导出到 CRM。
演练:Python + Apify 客户端
安装客户端:
pip install apify-client
针对一批目标城市调用该角色:
from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run_input = {
"locations": [
"85 Marsh St, Newark, NJ 07114, USA",
"95th Ave, Ozone Park, NY 11416, USA",
"1600 Pennsylvania Ave NW, Washington, DC 20500, USA",
],
"search_keyword": "pizza",
"max_search_results": 50,
}
run = client.actor("datacach/ubereats-stores-search-by-location-and-keyword").call(run_input=run_input)
items = list(client.dataset(run["defaultDatasetId"]).iterate_items())
每条数据格式如下:
{
"store_uuid": "35e7a890-3f2a-5948-815e-7a2a3cb77d1f",
"name": "Pizza Near Me",
"url": "https://www.ubereats.com/store/pizza-near-me/NeeokD8qWUiBXnoqPLd9Hw",
"estimated_time_to_delivery": "20 min",
"rating": 4.53,
"rating_count": "14",
"city": "Newark",
"country_code": "US",
"input": { "search_location": "85 Marsh St, Newark, NJ 07114, USA" }
}
转化为线索列表
将其载入 DataFrame 并整理成销售团队可直接使用的数据:
import pandas as pd
df = pd.DataFrame(items)
df["rating_count"] = pd.to_numeric(df["rating_count"], errors="coerce")
# 高评分、低评论量:有机表现良好但营销/技术投入较少的餐厅——是最佳外联目标。
leads = df[(df["rating"] >= 4.3) & (df["rating_count"] < 50)]
leads = leads[["name", "city", "url", "rating", "rating_count", "estimated_time_to_delivery"]]
leads.to_csv("restaurant_leads.csv", index=False)
这个筛选条件只是起点——你可以根据自己的卖点调整过滤逻辑。实践中有效的几个信号:
-
送达时间较长(
estimated_time_to_delivery> 40 min)→ 推销物流/运营工具 - 大城市但评论数量少→ 推销营销/曝光服务
- 用竞争对手的品牌名称搜索而非菜系→ 找出正在使用特定 POS 或纯外卖概念的所有门店,以便清楚哪些已经采用,哪些尚未采用
无论如何,最终你都会得到一份包含名称、URL、地理位置的潜在客户 CSV 文件——可直接导入任何外联工具。
为什么优于自行抓取
你可以自己编写针对 UberEats 的爬虫,但你将永远需要维护反机器人处理、分页逻辑和页面结构变化,才能拿到一份餐厅名称列表。而该角色已经完成了这些工作——你只需输入城市和关键词,就能获得 JSON 数据。它也极易重复执行:每月针对每个区域重新运行一次,就能获得一份自动更新的线索管道,而非一份很快过时的静态列表。
如果你想先在自己的城市试用上述流程,再扩展到整个区域,可使用免费计划(每次运行 1 个位置、10 条结果)。
试用
- UberEats Stores Search by Location and Keyword — 上文使用的角色
- UberEats Listing Brands By Country — 用于构建品牌级目标列表
- UberEats Stores Discovery By Brand URL — 用于将单一品牌扩展到所有门店
如果你用此方法搭建了线索管道,我很想知道你最终使用了哪些过滤条件或信号——欢迎在评论区分享。
0 Comments
Log in to join the conversation.No comments yet. Be the first to share your thoughts.