From 71950479fbd6088f249e5fda3b180f294d1d745d Mon Sep 17 00:00:00 2001 From: Max Date: Tue, 6 Feb 2018 00:35:39 +0100 Subject: Moves crawler to designated directory. --- crawler/shop_whiskyworld.go | 60 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 crawler/shop_whiskyworld.go (limited to 'crawler/shop_whiskyworld.go') diff --git a/crawler/shop_whiskyworld.go b/crawler/shop_whiskyworld.go new file mode 100644 index 0000000..e07c42f --- /dev/null +++ b/crawler/shop_whiskyworld.go @@ -0,0 +1,60 @@ +package main + +import ( + "log" + "strings" + + "github.com/gocolly/colly" +) + +func ScrapeWhiskyworld(shop Shop) []Angebot { + + Whiskys := []Angebot{} + + c := colly.NewCollector( + colly.AllowedDomains("whiskyworld.de"), + colly.AllowedDomains("www.whiskyworld.de"), + ) + + c.OnHTML(".product-item", func(e *colly.HTMLElement) { + + W := Angebot{} + + whisky_name_part1 := e.ChildText("h3") + whisky_name_part2 := e.ChildText(".item-description") + + W.Name = whisky_name_part1 + " " + whisky_name_part2 + + W.Url = "https://www.whiskyworld.de/" + strings.TrimPrefix(e.ChildAttr("a", "href"), "../") + + regular_price_noisy := e.ChildText(".offer") + regular_price := strings.TrimSuffix(strings.TrimPrefix(regular_price_noisy, "statt "), " €*") + + var err error + + W.Original_price, err = sanitize_price(regular_price) + if err != nil { + log.Fatal(err) + return + } + + W.Discounted_price, err = sanitize_price(e.ChildText(".uvp")) + if err != nil { + log.Fatal(err) + return + } + + W.Image_url = "https:" + e.ChildAttr("img", "src") + + W.Shop = shop.Id + W.Spirit_type = "Whisky" + + Whiskys = append(Whiskys, W) + }) + + c.Visit("https://www.whiskyworld.de/themen/sonderangebote?ft=%257B%2522produkt_kategorie%2522:%2522Blended%2BMalt%2522%257D") + c.Visit("https://www.whiskyworld.de/themen/sonderangebote?ft=%257B%2522produkt_kategorie%2522:%2522Blended%2BWhiskies%2522%257D") + c.Visit("https://www.whiskyworld.de/themen/sonderangebote?ft=%257B%2522produkt_kategorie%2522:%2522Single%2BMalt%2522%257D") + + return Whiskys +} -- cgit v1.2.3