implement下载55,000条AI提示词(免费,无需爬取)
以下是逐步指南,教你如何通过公共数据集端点拉取完整的Wikiprompt目录,并跟随keyset分页游标直到没有剩余内容,无需进行任何抓取。

如何下载55,000条AI提示词(免费,无需爬取)
如果你曾经尝试通过爬取Twitter线程、截屏Discord服务器,或用无头浏览器翻页抓取网站HTML来构建提示词数据集,你就知道这有多脆弱。选择器会变,速率限制会触发,而且你收集到的“提示词”中有一半其实是关于提示词的回复,而不是提示词本身。
Wikiprompt刚刚消除了所有这些需求。这个目录包含超过55,000条精选AI提示词,涵盖图像、视频和文本生成,适用于Midjourney、GPT Image、Veo、Kling、Nano Banana和Claude等模型,现在以纯JSON数据集的形式提供,你可以用curl分页获取。无需API密钥,无需登录,无需爬取。这篇文章是从“我想要数据”到本地文件中包含55,000条记录的最快路径。
第一步:访问清单
在拉取任何记录之前,先检查清单,这样你的脚本就能知道它处理的是什么:
curl "https://www.wikiprompt.org/dataset"
这会返回一个小的JSON文档,描述数据集:total_prompts(当前数量,55,000+),record_fields(下面的模式),以及pagination方案。把这个端点当作总数的唯一来源,不要在管道中硬编码数字。
第二步:拉取第一页
实际记录位于/dataset/prompts。分页基于键集(游标,而非页码),这意味着即使在第200页也能保持快速和稳定。默认页面大小为200条记录;你可以一次请求最多500条:
curl "https://www.wikiprompt.org/dataset/prompts?limit=500"
响应是一个JSON对象,包含记录列表和一个next字段。next是一个完整的URL,可以直接按原样获取,它带有一个after游标,指向你刚刚收到的最后一条记录。当没有更多内容可分页时,next为null。这一个字段就是你的整个循环条件。
第三步:跟随`next`直到它为null
这是Python中的完整分页循环。它将每条记录写入本地文件并自动停止:
import json
import time
import urllib.request
url = "https://www.wikiprompt.org/dataset/prompts?limit=500"
out = open("wikiprompt_dataset.jsonl", "w")
count = 0
while url:
with urllib.request.urlopen(url) as resp:
data = json.loads(resp.read())
for record in data["records"]:
out.write(json.dumps(record) + "\n")
count += 1
url = data.get("next")
time.sleep(0.2)
out.close()
print(f"Downloaded {count} prompts")
同样的循环用Node实现,如果你的技术栈是Node:
let url = "https://www.wikiprompt.org/dataset/prompts?limit=500";
const fs = require("fs");
const out = fs.createWriteStream("wikiprompt_dataset.jsonl");
let count = 0;
while (url) {
const res = await fetch(url);
const data = await res.json();
for (const record of data.records) {
out.write(JSON.stringify(record) + "\n");
count++;
}
url = data.next;
}
console.log(Downloaded ${count} prompts);
运行其中任何一个然后离开。每个响应都经过边缘缓存并启用了CORS(Access-Control-Allow-Origin: *),所以这可以从服务器、浏览器控制台、笔记本或无服务器函数中工作,无需任何特殊头。在正常连接下,以limit=500拉取全部55,000+条记录只需不到几分钟。
每条记录你实际得到什么
数据集中的每个JSON对象都有相同的结构,这正是它除了单次浏览之外还有用的原因:
slug和url,该提示词在wikiprompt.org上的规范页面title和descriptioncontent,你会复制到模型中的实际提示词文本category(创意、营销、个人、生产力、编程、教育、商业、研究、其他)和tagsmedia,当提示词产生视觉输出时的图像或视频URLmodel,提示词为其编写或生成的AI模型metadata,一个结构化块,涵盖媒体类型、宽高比、风格和质量评估author和original_source,指向提示词来源的原始推文或帖子的链接created_at和updated_at那个content字段是关键:它是可直接使用的提示词文本,而不是摘要,这正是大多数爬取数据集搞错的地方。
先看几条记录
与其盲目相信模式,不如打开几条实际条目。Titan: Engineering Blueprint of a Transforming Robot是一个详细的图像提示词的好例子,带有完整的元数据块。Data Physicalization展示了category和tags如何为更概念化、设计导向的提示词分配。Pastel Fantasy Portrait of a Young Woman是一个简洁的风格驱动提示词,值得与其元数据中的style字段进行比较。从本地JSONL文件中拉取这三个slug是快速检查解析器的方法,然后再信任它处理全部55,000条。
如果你更想查询而不是下载
批量数据集适用于你想要一次性地在本地拥有所有内容的情况。如果你只需要一部分,搜索API按需返回JSON查询结果,MCP服务器将同一目录作为工具暴露给Claude和其他代理,而llms.txt为爬虫提供站点地图。数据集导出和这些实时端点共享相同的基础数据,所以之后在它们之间切换不会花费你任何成本。
如果你重用这些数据,有一条规则
Wikiprompt聚合了原始作者公开帖子中的提示词;它不是版权持有者。如果你发布了基于此数据集构建的内容,请注明wikiprompt.org以及你使用的具体记录上的original_source链接。这是所有这些内容附加的唯一条件。
下载它,分页浏览它,然后构建一些东西。清单和next游标是你唯一需要记住的两件事。
Related Articles
- Laya vs. Jev: Die Open-Source-Antwort auf die Entscheidungsmodell-Welle
Sep 22, 2026 · 5 min read
- Laya contre Jev : La réponse open-source à la vague des modèles de décision
Sep 22, 2026 · 5 min read
- Laya vs Jev: La respuesta de código abierto a la ola de modelos de decisión
Sep 22, 2026 · 5 min read
- Laya vs Jev: 오픈소스로 답하는 의사결정 모델 물결
Sep 22, 2026 · 5 min read
- लाया बनाम जेव: निर्णय-मॉडल लहर का ओपन-सोर्स उत्तर
Sep 22, 2026 · 5 min read