diff options
| author | Max | 2018-02-01 16:13:56 +0100 |
|---|---|---|
| committer | Max | 2018-02-01 16:13:56 +0100 |
| commit | 35882837a2821749f3a2b1dfa23f19c4168004d3 (patch) | |
| tree | 5d6ac5078aebac93db47e507f564842d120bd1a3 /bottleworld.go | |
| parent | a5bda60647639e787a777446dce693ac330fe940 (diff) | |
| download | alkobote-35882837a2821749f3a2b1dfa23f19c4168004d3.tar.gz | |
Crawled the first seven shops.
Diffstat (limited to 'bottleworld.go')
| -rw-r--r-- | bottleworld.go | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/bottleworld.go b/bottleworld.go new file mode 100644 index 0000000..2f5991a --- /dev/null +++ b/bottleworld.go @@ -0,0 +1,52 @@ +package main + +import ( + "fmt" + "log" + "regexp" + // "strings" + + // "github.com/PuerkitoBio/goquery" + "github.com/gocolly/colly" +) + +func ScrapeBottleWord() { + c := colly.NewCollector( + colly.AllowedDomains("bottleworld.de"), + colly.AllowedDomains("www.bottleworld.de"), + ) + + c.OnHTML("li.item", func(e *colly.HTMLElement) { + whisky_name := e.ChildText("h2 > a") + + matched, err := regexp.MatchString("Whiske?y", whisky_name) + if err != nil { + log.Fatal(err) + } + if !matched { + return + } + + whisky_url := e.ChildAttr("a", "href") + log.Println(whisky_name) + log.Println(whisky_url) + + e.ForEach(".price-box", func(i int, e *colly.HTMLElement) { + e.ForEach(".old-price", func(i int, e *colly.HTMLElement) { + log.Println(e.ChildText(".price")) + }) + e.ForEach(".special-price", func(i int, e *colly.HTMLElement) { + log.Println(e.ChildText(".price")) + }) + }) + log.Println(e.ChildAttr("img", "src")) + + fmt.Println("") + }) + + c.Visit("https://www.bottleworld.de/aktuelle-sonderpreise/show/all") +} + +func main() { + ScrapeBottleWord() +} |
