diff options
| author | horus | 2018-02-16 16:57:10 +0100 |
|---|---|---|
| committer | horus | 2018-02-16 16:57:39 +0100 |
| commit | ed6ab4da59f80bf9fa2cbf15da5c9167dff44ea4 (patch) | |
| tree | 1038ab5d9b2a0b9bde5ee021624fa87422b705f8 /crawler/utility.go | |
| parent | b131ce750740ddb9c47515727327c06aa0d22aad (diff) | |
| download | alkobote-ed6ab4da59f80bf9fa2cbf15da5c9167dff44ea4.tar.gz | |
Adds structured logging. (crawler)
Diffstat (limited to 'crawler/utility.go')
| -rw-r--r-- | crawler/utility.go | 33 |
1 files changed, 18 insertions, 15 deletions
diff --git a/crawler/utility.go b/crawler/utility.go index c3daeb1..98587c9 100644 --- a/crawler/utility.go +++ b/crawler/utility.go @@ -1,7 +1,7 @@ package main import ( - "log" + log "github.com/Sirupsen/logrus" "regexp" "strconv" "strings" @@ -21,56 +21,56 @@ func stringInSlice(a string, list []string) bool { func detect_spirit_type(name string) string { matched, err := regexp.MatchString(`(^|\s)Gin(\s|$)`, name) if err != nil { - log.Fatal(err) + Fatal(err, "Gin regex failed") } if matched { return "Gin" } matched, err = regexp.MatchString(`(^|\s)Rh?um(\s|$)`, name) if err != nil { - log.Fatal(err) + Fatal(err, "Rum regex failed") } if matched { return "Rum" } matched, err = regexp.MatchString(`(^|\s)[VW]odka(\s|$)`, name) if err != nil { - log.Fatal(err) + Fatal(err, "Wodka regex failed") } if matched { return "Wodka" } matched, err = regexp.MatchString(`(^|\s)Whiske?y(\s|$)`, name) if err != nil { - log.Fatal(err) + Fatal(err, "Whisky regex failed") } if matched { return "Whisky" } matched, err = regexp.MatchString(`(^|\s)Champagner(\s|$)`, name) if err != nil { - log.Fatal(err) + Fatal(err, "Champagner regex failed") } if matched { return "Champagner" } matched, err = regexp.MatchString(`(^|\s)Cognac(\s|$)`, name) if err != nil { - log.Fatal(err) + Fatal(err, "Cognac regex failed") } if matched { return "Cognac" } matched, err = regexp.MatchString(`(^|\s)Grappa(\s|$)`, name) if err != nil { - log.Fatal(err) + Fatal(err, "Grappa regex failed") } if matched { return "Grappa" } matched, err = regexp.MatchString(`(^|\s)Likör(\s|$)`, name) if err != nil { - log.Fatal(err) + Fatal(err, "Likör regex failed") } if matched { return "Likör" @@ -82,18 +82,19 @@ func detect_spirit_type(name string) string { func extract_volume(volume string) (float32, error) { r_liter, err := regexp.Compile(`[0-9]+([,.][0-9]+)?( )?[lL](iter)?`) if err != nil { - log.Fatal(err) + Fatal(err, "Extract volume regex failed") } volume_noisy := r_liter.FindString(volume) r_liter2, err := regexp.Compile(`[0-9]+([,.][0-9]+)?`) if err != nil { - log.Fatal(err) + Fatal(err, "2nd extract volume regex failed") } volume_noisy = r_liter2.FindString(volume_noisy) volume_noisy = strings.Replace(volume_noisy, ",", ".", 1) volume64, err := strconv.ParseFloat(volume_noisy, 32) if err != nil { + Println(err, "Parsing volume to float failed") return 0, err } @@ -114,12 +115,13 @@ func extract_abv(abv_noisy string) (float32, error) { abv_noisy = strings.TrimSpace(abv_noisy) r_abv, err := regexp.Compile(`[0-9]+([,.][0-9]+)?`) if err != nil { - log.Fatal(err) + Fatal(err, "Extract abv regex failed") } abv_noisy = r_abv.FindString(abv_noisy) abv64, err := strconv.ParseFloat(abv_noisy, 32) if err != nil { + Println(err, "Parsing abv to float failed") return 0, err } @@ -135,6 +137,7 @@ func get_volume(e *colly.HTMLElement) float32 { matched, err := regexp.MatchString(`[lL](iter)?`, volume_noisy) if err != nil { + Fatal(err, "Get volume regex failed") log.Fatal(err) } if !matched { @@ -145,7 +148,7 @@ func get_volume(e *colly.HTMLElement) float32 { volume, err := extract_volume(volume_noisy) if err != nil { log.Println("get_volume: " + volume_noisy) - log.Fatal(err) + Fatal(err, "Get Volume: Extract Volume failed") } return volume @@ -166,7 +169,7 @@ func get_abv(e *colly.HTMLElement) float32 { abv, err := extract_abv(abv_noisy) if err != nil { log.Println("get_abv: " + abv_noisy) - log.Fatal(err) + Fatal(err, "Get ABV: Extract ABV failed") } return abv @@ -186,7 +189,7 @@ func get_base_price(e *colly.HTMLElement) int { base_price, err := sanitize_base_price(base_price_noisy) if err != nil { log.Println("get_base_price: " + base_price_noisy) - log.Fatal(err) + Fatal(err, "Get base price: sanitize base price failed") } return base_price |
