From e18c050fb12c89628dc37556706e5ab7a43a2725 Mon Sep 17 00:00:00 2001 From: Maista <131594657+Maista6969@users.noreply.github.com> Date: Tue, 11 Jun 2024 05:21:39 +0200 Subject: [PATCH] Add log and utils modules to the Javascript VM used in scrapers (#4937) --- pkg/scraper/mapped.go | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/pkg/scraper/mapped.go b/pkg/scraper/mapped.go index f8a096015..1b24379ca 100644 --- a/pkg/scraper/mapped.go +++ b/pkg/scraper/mapped.go @@ -534,6 +534,21 @@ func (p *postProcessJavascript) Apply(ctx context.Context, value string, q mappe return value } + log := &javascript.Log{ + Logger: logger.Logger, + Prefix: "", + ProgressChan: make(chan float64), + } + + if err := log.AddToVM("log", vm); err != nil { + logger.Logger.Errorf("error adding log API: %w", err) + } + + util := &javascript.Util{} + if err := util.AddToVM("util", vm); err != nil { + logger.Logger.Errorf("error adding util API: %w", err) + } + script, err := javascript.CompileScript("", "(function() { "+string(*p)+"})()") if err != nil { logger.Warnf("javascript failed to compile: %v", err)