diff options
Diffstat (limited to 'metube.go')
| -rw-r--r-- | metube.go | 13 |
1 files changed, 12 insertions, 1 deletions
@@ -2,9 +2,11 @@ package main import ( "flag" + "fmt" "strings" "bufio" "os" + "encoding/json" "git.sr.ht/~ark/ytparser" ) @@ -28,6 +30,7 @@ func main() { page := flag.Int("p", 0, "The page to get") lang := flag.String("l", "en", "The language to search in (follows youtube's language codes: en, fr, de, ja...)") order := flag.String("o", "relevance", "The criterion to use for the search order (relevance, date, views, rating)") + jsonExport := flag.Bool("j", false, "Export to json") flag.Parse() if *format == "-" { *format = readStdin() @@ -36,5 +39,13 @@ func main() { if err != nil { panic(err) } - ytparser.PrintItems(items, *format) + if *jsonExport { + by, err := json.Marshal(items) + if err != nil { + panic(err) + } + fmt.Println(string(by)) + } else { + ytparser.PrintItems(items, *format) + } } |
