名称: luma
描述: 从 Luma (lu.ma) 获取任意城市的即将举办的活动。当用户询问科技活动、创业聚会、社交活动、会议或班加罗尔、孟买、德里、旧金山、纽约等城市正在发生的事情时使用。
版本: 1.0.0
作者: Clawd
无需认证,从 Luma (lu.ma) 获取结构化的活动数据。Luma 是一个流行的科技聚会、创业活动、会议和社区聚会平台。
Luma 是一个 Next.js SSR 应用。所有活动数据都以 JSON 格式嵌入在 HTML 的 <script id="__NEXT_DATA__"> 标签中。Python 脚本提取此数据——无需 API 密钥。
python3 scripts/fetch_events.py bengaluru mumbai --days 14
python3 scripts/fetch_events.py <城市> [更多城市...] [--days N] [--max N] [--json]
城市: 城市标识符(bengaluru, mumbai, delhi, san-francisco, new-york, london 等)--days N: 仅显示未来 N 天内的活动(默认:30)--max N: 每个城市的最大活动数量(默认:20)--json: 输出原始 JSON 而非格式化文本============================================================
📍 班加罗尔 — 5 个活动
============================================================
🎯 AI 工程师日(OpenAI)
📍 班加罗尔,怀特菲尔德
📅 2026年1月31日 上午10:30 IST
👥 OpenAI, Google AI
👤 1411 人参加
🎫 可报名(剩余150个名额)
🔗 https://lu.ma/57tarlkp
🎯 创业融资大师课
📍 班加罗尔,科拉曼加拉
📅 2026年2月2日 下午06:00 IST
🟢 免费(50个名额)
🔗 https://lu.ma/startup-funding
--json)[
{
"city": "bengaluru",
"count": 5,
"events": [
{
"event": {
"name": "AI Engineers Day",
"start_at": "2026-01-31T05:00:00.000Z",
"end_at": "2026-01-31T12:30:00.000Z",
"url": "57tarlkp",
"geo_address_info": {
"city": "Bengaluru",
"address": "Whitefield",
"full_address": "..."
}
},
"hosts": [{"name": "OpenAI", "linkedin_handle": "/company/openai"}],
"guest_count": 1411,
"ticket_info": {
"is_free": false,
"is_sold_out": false,
"spots_remaining": 150
}
}
]
}
]
始终将获取到的活动保存到 ~/clawd/memory/luma-events.json 以供将来参考。
这允许你:
- 无需重复抓取即可回答有关活动的问题
- 跟踪用户感兴趣的活动
- 跨城市比较活动
- 构建关于即将到来的计划的上下文
何时保存:
- 为任何城市获取活动后
- 与现有数据合并(按活动 URL)
- 仅保留未来 60 天内的活动
- 添加 lastFetched 时间戳
格式:
[
{
"city": "bengaluru",
"name": "AI Engineers Day",
"start": "2026-01-31T05:00:00.000Z",
"end": "2026-01-31T12:30:00.000Z",
"url": "https://lu.ma/57tarlkp",
"venue": "Whitefield, Bengaluru",
"hosts": ["OpenAI", "Google AI"],
"guestCount": 1411,
"ticketStatus": "available",
"spotsRemaining": 150,
"isFree": false,
"lastFetched": "2026-01-29T12:54:00Z"
}
]
python3 scripts/fetch_events.py bengaluru --days 7
python3 scripts/fetch_events.py bengaluru mumbai san-francisco --days 14 --json | jq '.[] | .events[] | select(.event.name | contains("AI"))'
python3 scripts/fetch_events.py new-york --max 5
用户: "这个周末班加罗尔有什么科技活动?"
→ 获取班加罗尔未来 7 天的活动,保存到内存
用户: "下个月孟买有 AI 聚会吗?"
→ 获取孟买未来 30 天的活动,筛选 AI 相关活动,保存到内存
用户: "比较一下旧金山和纽约的创业活动"
→ 获取两个城市的活动,进行比较,并将两者都保存到内存
"找不到 NEXT_DATA" → Luma 更改了其 HTML 结构,需要更新脚本
"意外的数据结构" → JSON 路径已更改,请检查最新的 HTML
未返回任何活动 → 城市标识符可能错误,或者该城市没有即将举办的活动
超时错误 → 网络问题,请重试或检查网络连接
urllib, json, re, argparse, datetime(均为内置模块)--days)--max)