Blog›Guides

Como Baixar 55.000 Prompts de IA (Grátis, Sem Scraping)

Um guia passo a passo para puxar todo o catálogo do Wikiprompt via o endpoint público de dataset, seguindo o cursor de paginação por keyset até não sobrar nada, sem necessidade de scraping.

Como Baixar 55.000 Prompts de IA (Grátis, Sem Scraping)

Como Baixar 55.000 Prompts de IA (Grátis, Sem Scraping)

Se você já tentou construir um dataset de prompts raspando threads do Twitter, capturando telas de servidores do Discord ou paginando pelo HTML de um site com um navegador headless, você já sabe como isso é frágil. Seletores mudam, limites de taxa entram em ação, e metade dos "prompts" que você coleta acabam sendo respostas sobre o prompt, não o prompt em si.

O Wikiprompt acabou de eliminar a necessidade de tudo isso. O catálogo, com mais de 55.000 prompts de IA curados, abrangendo geração de imagem, vídeo e texto em modelos como Midjourney, GPT Image, Veo, Kling, Nano Banana e Claude, agora está disponível como um dataset JSON simples que você pode paginar com curl. Sem chave de API, sem login, sem scraping. Este post é o caminho mais rápido de "eu quero os dados" para um arquivo local com 55.000 registros.

Passo 1: acesse o manifest

Antes de puxar qualquer registro, verifique o manifest para que seu script saiba com o que está lidando:

curl "https://www.wikiprompt.org/dataset"

Isso retorna um pequeno documento JSON descrevendo o dataset: total_prompts (a contagem atual, 55.000+), record_fields (o esquema abaixo) e o esquema de pagination. Trate este endpoint como a fonte da verdade para o total, não codifique um número fixo no seu pipeline.

Passo 2: puxe sua primeira página

Os registros reais estão em /dataset/prompts. A paginação é baseada em chaves (um cursor, não números de página), o que significa que ela permanece rápida e estável mesmo na página 200. O tamanho padrão da página é de 200 registros; você pode pedir até 500 de uma vez:

curl "https://www.wikiprompt.org/dataset/prompts?limit=500"

A resposta é um objeto JSON com uma lista de registros e um campo next. next é uma URL completa, pronta para ser buscada como está, que carrega um cursor after apontando para o último registro que você acabou de receber. Quando não há mais nada para paginar, next é null. Esse único campo é toda a sua condição de loop.

Passo 3: siga `next` até que seja null

Aqui está o loop de paginação inteiro em Python. Ele escreve cada registro em um arquivo local e se interrompe sozinho:

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")

O mesmo loop em Node, se essa for sua stack:

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);

Execute qualquer um dos dois e vá embora. Cada resposta é armazenada em cache de borda e habilitada para CORS (Access-Control-Allow-Origin: *), então isso funciona a partir de um servidor, console de navegador, notebook ou função serverless sem cabeçalhos especiais. Em uma conexão normal, puxar todos os 55.000+ registros com limit=500 leva bem menos de alguns minutos.

O que você realmente obtém por registro

Cada objeto JSON no dataset tem a mesma forma, o que o torna útil para qualquer coisa além de navegação pontual:

  • slug e url, a página canônica para aquele prompt em wikiprompt.org
  • title e description
  • content, o texto real do prompt que você copiaria em um modelo
  • category (creative, marketing, personal, productivity, coding, education, business, research, other) e tags
  • media, URLs de imagem ou vídeo quando o prompt produziu saída visual
  • model, o modelo de IA para o qual o prompt foi escrito ou com o qual foi gerado
  • metadata, um bloco estruturado cobrindo tipo de mídia, proporção de aspecto, estilo e uma avaliação de qualidade
  • author e original_source, um link de volta ao tweet ou post original de onde o prompt veio
  • created_at e updated_at
  • Esse campo content é o ponto principal: é o texto do prompt pronto para uso, não um resumo dele, que é o que a maioria dos datasets raspados erra.

    Alguns registros para ver primeiro

    Em vez de confiar no esquema por fé, abra algumas entradas reais. Titan: Engineering Blueprint of a Transforming Robot é um bom exemplo de um prompt de imagem detalhado com um bloco de metadados completo. Data Physicalization mostra como category e tags são atribuídos para um prompt mais conceitual e orientado a design. E Pastel Fantasy Portrait of a Young Woman é um prompt compacto orientado a estilo que vale a pena comparar com o campo style em seus metadados. Puxar esses três slugs do seu arquivo JSONL local é uma maneira rápida de verificar seu parser antes de confiar nele em todos os 55.000.

    Se você preferir consultar em vez de baixar

    O dataset em massa é para quando você quer tudo, localmente, de uma vez. Se você só precisa de uma fatia, a API de busca responde consultas sob demanda em JSON, o servidor MCP expõe o mesmo catálogo como ferramentas para Claude e outros agentes, e llms.txt dá aos crawlers um mapa do site. A exportação do dataset e esses endpoints ao vivo compartilham os mesmos dados subjacentes, então alternar entre eles depois não custa nada.

    Uma regra se você reutilizar isso

    O Wikiprompt agrega prompts de posts públicos de seus autores originais; ele não é o detentor dos direitos autorais. Se você publicar algo construído sobre este dataset, credite wikiprompt.org e o link original_source nos registros específicos que você usou. Essa é a única condição anexada a tudo isso.

    Baixe, pagine e construa algo. O manifest e o cursor next são as únicas duas coisas que você precisa lembrar.

    Tags
    open-data·dataset·ai-prompts·api·download·pagination