コミット
f375f4f97e
|
@ -20,7 +20,27 @@ func GetUrl (f Opts) (string, error) {
|
||||||
m1 := string(minute[0])
|
m1 := string(minute[0])
|
||||||
m2 := string(minute[1])
|
m2 := string(minute[1])
|
||||||
|
|
||||||
curl, _ := url.Parse("https://transit.yahoo.co.jp/search/result?from=" + url.QueryEscape(f.From) + "&to=" + url.QueryEscape(f.To) + "&y=" + year + "&m=" + month + "&d=" + day + "&hh=" + hour + "&m1=" + m1 + "&m2=" + m2 + "&type=" + f.Mode + "&ticket=ic&expkind=1&userpass=1&ws=" + f.Route + "&al=" + b2s(f.NoAirplane) + "&shin=" + b2s(f.NoShinkansen) + "&ex=" + b2s(f.NoExpress) + "&hb=" + b2s(f.NoExpressBus) + "&lb=" + b2s(f.NoBus) + "&sr=" + b2s(f.NoFairy))
|
curl, err := url.Parse(
|
||||||
|
"https://transit.yahoo.co.jp/search/result" +
|
||||||
|
"?from=" + url.QueryEscape(f.From) +
|
||||||
|
"&to=" + url.QueryEscape(f.To) +
|
||||||
|
"&y=" + year +
|
||||||
|
"&m=" + month +
|
||||||
|
"&d=" + day +
|
||||||
|
"&hh=" + hour +
|
||||||
|
"&m1=" + m1 +
|
||||||
|
"&m2=" + m2 +
|
||||||
|
"&type=" + f.Mode +
|
||||||
|
"&ticket=ic&expkind=1&userpass=1&ws=" + f.Route +
|
||||||
|
"&al=" + b2s(f.NoAirplane) +
|
||||||
|
"&shin=" + b2s(f.NoShinkansen) +
|
||||||
|
"&ex=" + b2s(f.NoExpress) +
|
||||||
|
"&hb=" + b2s(f.NoExpressBus) +
|
||||||
|
"&lb=" + b2s(f.NoBus) +
|
||||||
|
"&sr=" + b2s(f.NoFairy))
|
||||||
|
if err != nil {
|
||||||
|
return "", nil
|
||||||
|
}
|
||||||
|
|
||||||
return curl.String(), nil
|
return curl.String(), nil
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,46 +6,63 @@ import (
|
||||||
"github.com/gookit/color"
|
"github.com/gookit/color"
|
||||||
)
|
)
|
||||||
|
|
||||||
func Render (route []Route) {
|
var r, g, b uint8
|
||||||
var r, g, b uint8
|
var col string
|
||||||
col := "fcfcfc"
|
|
||||||
fmt.Sscanf("ff7e56", "%2x%2x%2x", &r, &g, &b)
|
func getFares(v Station, k int) {
|
||||||
b1 := color.RGB(uint8(r), uint8(g), uint8(b)).Sprint("早")
|
|
||||||
fmt.Sscanf("60bddb", "%2x%2x%2x", &r, &g, &b)
|
|
||||||
b2 := color.RGB(uint8(r), uint8(g), uint8(b)).Sprint("楽")
|
|
||||||
fmt.Sscanf("fab60a", "%2x%2x%2x", &r, &g, &b)
|
|
||||||
b3 := color.RGB(uint8(r), uint8(g), uint8(b)).Sprint("安")
|
|
||||||
fmt.Sscanf(col, "%2x%2x%2x", &r, &g, &b)
|
|
||||||
c := color.RGB(uint8(r), uint8(g), uint8(b)).Sprint("")
|
c := color.RGB(uint8(r), uint8(g), uint8(b)).Sprint("")
|
||||||
|
|
||||||
for key, value := range route {
|
|
||||||
color.Style{color.FgBlack, color.BgMagenta, color.OpBold}.Println("# ルート" + fmt.Sprintf("%d", key+1))
|
|
||||||
badges := ""
|
|
||||||
for _, badge := range value.Badges {
|
|
||||||
if badge == 1 {
|
|
||||||
badges += "〈" + b1 + "〉"
|
|
||||||
}
|
|
||||||
if badge == 2 {
|
|
||||||
badges += "〈" + b2 + "〉"
|
|
||||||
}
|
|
||||||
if badge == 3 {
|
|
||||||
badges += "〈" + b3 + "〉"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
fmt.Println(value.Time + " (" + value.Duration + "), " + value.Fare + ", 乗換数:" + value.TransitCunt + " " + badges)
|
|
||||||
for k, v := range value.Stations {
|
|
||||||
fmt.Println(v.Time + " " + v.Name)
|
|
||||||
for i, fare := range v.Fares {
|
for i, fare := range v.Fares {
|
||||||
if k == i {
|
if k != i { continue }
|
||||||
|
|
||||||
col = fare.Color
|
col = fare.Color
|
||||||
fmt.Sscanf(col, "%2x%2x%2x", &r, &g, &b)
|
fmt.Sscanf(col, "%2x%2x%2x", &r, &g, &b)
|
||||||
text := fare.Train
|
text := fare.Train
|
||||||
|
|
||||||
if fare.Platform != "" { text += "\n" + fare.Platform }
|
if fare.Platform != "" { text += "\n" + fare.Platform }
|
||||||
c = color.RGB(uint8(r), uint8(g), uint8(b)).Sprint(text)
|
c = color.RGB(uint8(r), uint8(g), uint8(b)).Sprint(text)
|
||||||
fmt.Println(c)
|
fmt.Println(c)
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func Render (route []Route) {
|
||||||
|
col = "fcfcfc"
|
||||||
|
|
||||||
|
fmt.Sscanf("ff7e56", "%2x%2x%2x", &r, &g, &b)
|
||||||
|
b1 := color.RGB(uint8(r), uint8(g), uint8(b)).Sprint("早")
|
||||||
|
|
||||||
|
fmt.Sscanf("60bddb", "%2x%2x%2x", &r, &g, &b)
|
||||||
|
b2 := color.RGB(uint8(r), uint8(g), uint8(b)).Sprint("楽")
|
||||||
|
|
||||||
|
fmt.Sscanf("fab60a", "%2x%2x%2x", &r, &g, &b)
|
||||||
|
b3 := color.RGB(uint8(r), uint8(g), uint8(b)).Sprint("安")
|
||||||
|
|
||||||
|
fmt.Sscanf(col, "%2x%2x%2x", &r, &g, &b)
|
||||||
|
|
||||||
|
for key, value := range route {
|
||||||
|
color.Style{
|
||||||
|
color.FgBlack,
|
||||||
|
color.BgMagenta,
|
||||||
|
color.OpBold,
|
||||||
|
}.Println("# ルート" + fmt.Sprintf("%d", key+1))
|
||||||
|
|
||||||
|
badges := ""
|
||||||
|
for _, badge := range value.Badges {
|
||||||
|
if badge == 1 { badges += "〈" + b1 + "〉" }
|
||||||
|
if badge == 2 { badges += "〈" + b2 + "〉" }
|
||||||
|
if badge == 3 { badges += "〈" + b3 + "〉" }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fmt.Println(
|
||||||
|
value.Time + " (" + value.Duration + "), " +
|
||||||
|
value.Fare + ", 乗換数:" + value.TransitCunt + " " + badges,
|
||||||
|
)
|
||||||
|
|
||||||
|
for k, v := range value.Stations {
|
||||||
|
fmt.Println(v.Time + " " + v.Name)
|
||||||
|
getFares(v, k)
|
||||||
}
|
}
|
||||||
|
|
||||||
fmt.Println("")
|
fmt.Println("")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
読み込み中…
新しいイシューから参照