Resumen
Este flujo de trabajo genera un completo semanal marketing intelligence informe by scanning competidor activity a traves de Google, YouTube, Reddit, y TikTok. It rastrea nuevo contenido, menciones de marca, sentiment shifts, y trending topics in your mercado. El salida es un structured informe ese feeds en Monday manana estrategia meetings.
Desencadenador
Cron programar (cada Sunday at 11 PM UTC)
Programación
Ejecuta cada Sunday at 11 PM UTC
Pasos del flujo de trabajo
Cargar competidor y lista de palabras clave
Leer monitored competidores, marcas, y mercado palabras clave de configuracion.
Scan Google for competidor contenido
Search Google for cada competidor dominio to encontrar nuevo paginas, blog publicaciones, y paginas de destino.
Verificar YouTube for nuevo videos
Search YouTube for competidor marca names y mercado palabras clave to encontrar nuevo video contenido.
Monitorear Reddit discussions
Search Reddit for menciones de marca y mercado topic discussions de el past semana.
Scan TikTok tendencias
Verificar TikTok for trending contenido in your mercado vertical.
Compile y distribute informe
Agregar todos findings en un structured informe semanal y enviar to el team.
Implementacion en Python
import requests
import json
from datetime import datetime
from pathlib import Path
API_KEY = "your_scavio_api_key"
TIKTOK_URL = "https://api.scavio.dev/api/v1/tiktok"
SEARCH_URL = "https://api.scavio.dev/api/v1/search"
COMPETITORS = ["competitor-one.com", "competitor-two.com"]
MARKET_KEYWORDS = ["your market keyword", "your niche term"]
BRAND_KEYWORDS = ["your brand", "competitor brand"]
def search(platform: str, query: str) -> list[dict]:
res = requests.post(
SEARCH_URL,
headers={"x-api-key": API_KEY},
json={"platform": platform, "query": query},
timeout=15,
)
res.raise_for_status()
return res.json().get("organic", [])
def scan_tiktok(keyword: str) -> list[dict]:
res = requests.post(
f"{TIKTOK_URL}/hashtag",
headers={"Authorization": f"Bearer {API_KEY}"},
json={"hashtag": keyword.replace(" ", "")},
timeout=15,
)
if res.status_code == 200:
return res.json().get("videos", [])[:5]
return []
def run():
report = {
"week_ending": datetime.utcnow().strftime("%Y-%m-%d"),
"competitor_google": {},
"youtube_content": [],
"reddit_mentions": [],
"tiktok_trends": [],
}
# Google competitor scan
for domain in COMPETITORS:
results = search("google", f"site:{domain}")
report["competitor_google"][domain] = {
"new_pages_found": len(results),
"top_pages": [{"title": r.get("title", ""), "link": r.get("link", "")} for r in results[:5]],
}
# YouTube scan
for kw in MARKET_KEYWORDS:
videos = search("youtube", kw)
report["youtube_content"].extend([{
"keyword": kw,
"title": v.get("title", ""),
"channel": v.get("channel", ""),
"views": v.get("views", 0),
} for v in videos[:3]])
# Reddit scan
for kw in BRAND_KEYWORDS:
posts = search("reddit", kw)
report["reddit_mentions"].extend([{
"keyword": kw,
"title": p.get("title", ""),
"subreddit": p.get("subreddit", ""),
"score": p.get("score", 0),
} for p in posts[:5]])
# TikTok scan
for kw in MARKET_KEYWORDS:
videos = scan_tiktok(kw)
report["tiktok_trends"].extend([{
"keyword": kw,
"views": v.get("views", 0),
"creator": v.get("creator", ""),
} for v in videos])
output = Path(f"intel_report_{report['week_ending']}.json")
output.write_text(json.dumps(report, indent=2))
print(f"Weekly intel report generated:")
print(f" Competitors scanned: {len(COMPETITORS)}")
print(f" YouTube videos found: {len(report['youtube_content'])}")
print(f" Reddit mentions: {len(report['reddit_mentions'])}")
print(f" TikTok trends: {len(report['tiktok_trends'])}")
if __name__ == "__main__":
run()Implementacion en JavaScript
const API_KEY = "your_scavio_api_key";
const SEARCH_URL = "https://api.scavio.dev/api/v1/search";
const TIKTOK_URL = "https://api.scavio.dev/api/v1/tiktok";
const COMPETITORS = ["competitor-one.com", "competitor-two.com"];
const MARKET_KEYWORDS = ["your market keyword", "your niche term"];
const BRAND_KEYWORDS = ["your brand", "competitor brand"];
async function search(platform, query) {
const res = await fetch(SEARCH_URL, {
method: "POST",
headers: { "x-api-key": API_KEY, "content-type": "application/json" },
body: JSON.stringify({ platform, query }),
});
if (!res.ok) throw new Error(`scavio ${res.status}`);
return (await res.json()).organic ?? [];
}
async function scanTiktok(keyword) {
const res = await fetch(`${TIKTOK_URL}/hashtag`, {
method: "POST",
headers: { Authorization: `Bearer ${API_KEY}`, "content-type": "application/json" },
body: JSON.stringify({ hashtag: keyword.replace(/ /g, "") }),
});
if (!res.ok) return [];
return ((await res.json()).videos ?? []).slice(0, 5);
}
async function run() {
const fs = await import("fs/promises");
const report = {
weekEnding: new Date().toISOString().slice(0, 10),
competitorGoogle: {},
youtubeContent: [],
redditMentions: [],
tiktokTrends: [],
};
for (const domain of COMPETITORS) {
const results = await search("google", `site:${domain}`);
report.competitorGoogle[domain] = {
newPagesFound: results.length,
topPages: results.slice(0, 5).map((r) => ({ title: r.title ?? "", link: r.link ?? "" })),
};
}
for (const kw of MARKET_KEYWORDS) {
const videos = await search("youtube", kw);
report.youtubeContent.push(...videos.slice(0, 3).map((v) => ({
keyword: kw, title: v.title ?? "", channel: v.channel ?? "", views: v.views ?? 0,
})));
}
for (const kw of BRAND_KEYWORDS) {
const posts = await search("reddit", kw);
report.redditMentions.push(...posts.slice(0, 5).map((p) => ({
keyword: kw, title: p.title ?? "", subreddit: p.subreddit ?? "", score: p.score ?? 0,
})));
}
for (const kw of MARKET_KEYWORDS) {
const videos = await scanTiktok(kw);
report.tiktokTrends.push(...videos.map((v) => ({
keyword: kw, views: v.views ?? 0, creator: v.creator ?? "",
})));
}
await fs.writeFile(`intel_report_${report.weekEnding}.json`, JSON.stringify(report, null, 2));
console.log("Weekly intel report generated:");
console.log(` Competitors: ${COMPETITORS.length} | YouTube: ${report.youtubeContent.length} | Reddit: ${report.redditMentions.length} | TikTok: ${report.tiktokTrends.length}`);
}
run();Plataformas utilizadas
Búsqueda web con grafo de conocimiento, PAA y resúmenes de IA
YouTube
Búsqueda de videos con transcripciones y metadatos
Comunidad, publicaciones y comentarios en hilos de cualquier subreddit
TikTok
Descubrimiento de videos, creadores y productos en tendencia