Initial commit
[brackets.git] / scrape / seed / seed.go
1 package main
2
3 import (
4 "git.jacobcasper.com/brackets/client"
5 "git.jacobcasper.com/brackets/db"
6 _ "github.com/mattn/go-sqlite3"
7 "log"
8 )
9
10 func main() {
11
12 db, err := db.New()
13 if err != nil {
14 log.Fatal("Could not open db: ", err.Error())
15 }
16
17 client, err := client.Get()
18 if err != nil {
19 log.Fatal("Could not get client: ", err.Error())
20 }
21
22 _, page, err := client.FeaturedPlaylists()
23
24 for _, playlist := range page.Playlists {
25 tracks, err := client.GetPlaylistTracks(playlist.ID)
26 if err != nil {
27 log.Printf("Couldn't retrieve playlist %s.", string(playlist.ID))
28 }
29 for _, trackPage := range tracks.Tracks {
30 for _, artist := range trackPage.Track.Artists {
31 db.Mu.Lock()
32 db.Db.Exec("INSERT INTO ARTIST (ID, NAME) VALUES (?, ?)", artist.ID, artist.Name)
33 db.Mu.Unlock()
34 }
35 }
36 }
37 }