scrapper-mandarake/internal/scrapper/handler.go

41 lines
835 B
Go
Raw Normal View History

2026-04-03 20:54:10 +03:00
package scrapper
import (
"context"
"sync"
"time"
)
const (
originName = "mandarake"
zeroPrice int32 = 0
taxMultiplier float64 = 1.1
pkgLogHeader = "Scrapper |"
logWorker = "worker:"
logTaskWarning = "task warning:"
logGetPrice = "get price:"
)
type Scrapper struct {
externalBrowser string
goroutinesNumber int
taskTimeout time.Duration
poolCancel context.CancelFunc
allocCancel context.CancelFunc
wg sync.WaitGroup
}
type Deps struct {
ExternalBrowser string
GoroutinesNumber int
TaskTimeout int
}
func New(deps Deps) PriceScrapper {
return &Scrapper{
externalBrowser: deps.ExternalBrowser,
goroutinesNumber: deps.GoroutinesNumber,
taskTimeout: time.Second * time.Duration(deps.TaskTimeout),
}
}