From 15d06c9802d08037283aa218ccc2f92a9236fcc9 Mon Sep 17 00:00:00 2001 From: dev Date: Fri, 26 Jun 2026 03:37:51 +0200 Subject: feat: add -wiki-only flag to rerun only wiki data extraction - fetchWikiArticlesData is standalone again (re-extracted from consumer) - -wiki-only flag skips SPARQL pipeline, runs only wiki data fetch - Default behavior: full pipeline (SPARQL + wiki data in parallel) --- src/main.go | 32 +++++++++++++++++++++----------- 1 file changed, 21 insertions(+), 11 deletions(-) (limited to 'src/main.go') diff --git a/src/main.go b/src/main.go index 272e4b6..cf1c74b 100644 --- a/src/main.go +++ b/src/main.go @@ -1,6 +1,7 @@ package main import ( + "flag" "fmt" "log" "regexp" @@ -164,6 +165,9 @@ func (a *App) extractImdbIDs() error { } func main() { + wikiOnly := flag.Bool("wiki-only", false, "only fetch wiki article data, skip SPARQL") + flag.Parse() + cfg, err := LoadConfig("config.json") if err != nil { log.Fatalf("failed to load config: %v", err) @@ -183,19 +187,25 @@ func main() { } defer app.DB.Close() - if err = app.extractImdbIDs(); err != nil { - log.Fatalf("extractImdbIDs: %v", err) - } + if !*wikiOnly { + if err = app.extractImdbIDs(); err != nil { + log.Fatalf("extractImdbIDs: %v", err) + } - if err = app.populateImdbTable(); err != nil { - log.Fatalf("populateImdbTable: %v", err) - } + if err = app.populateImdbTable(); err != nil { + log.Fatalf("populateImdbTable: %v", err) + } - if err = app.fetchAndUpdateImdbData(); err != nil { - log.Fatalf("fetchAndUpdateImdbData: %v", err) - } + if err = app.fetchAndUpdateImdbData(); err != nil { + log.Fatalf("fetchAndUpdateImdbData: %v", err) + } - if err = app.fetchWikiArticles(); err != nil { - log.Fatalf("fetchWikiArticles: %v", err) + if err = app.fetchWikiArticles(); err != nil { + log.Fatalf("fetchWikiArticles: %v", err) + } + } else { + if err = app.fetchWikiArticlesData(); err != nil { + log.Fatalf("fetchWikiArticlesData: %v", err) + } } } -- cgit v1.2.3