diff --git a/internal/parsers/mandarake/handleTasks.go b/internal/parsers/mandarake/handleTasks.go index c31a54c..5d5ecd5 100644 --- a/internal/parsers/mandarake/handleTasks.go +++ b/internal/parsers/mandarake/handleTasks.go @@ -34,13 +34,13 @@ func (s *Parser) HandleTasks(tasks []shared.Task, sender chan shared.TaskResult, } func (s *Parser) worker(ctx context.Context, receiver chan shared.Task, sender chan shared.TaskResult, state *appState.State) { - pageCtx, pageCancel := chromedp.NewContext(ctx, chromedp.WithLogf(log.Printf)) - defer pageCancel() - for task := range receiver { log.WithField("task_uuid", task.MerchUuid).Debug(logHeader + logWorker + "processing task") + pageCtx, pageCancel := chromedp.NewContext(ctx, chromedp.WithLogf(log.Printf)) + price, err := s.getPrice(pageCtx, task) + pageCancel() if err != nil { log.WithField("task_uuid", task.MerchUuid).Warn(logHeader + logWorker + logTaskWarning + "failed to process, zero price") sender <- shared.TaskResult{