package lines import ( "bufio" "io" "net/http" ) func UrlToLines(url string) ([]string, error) { resp, err := http.Get(url) if err != nil { return nil, err } defer resp.Body.Close() return LinesFromReader(resp.Body) } func LinesFromReader(r io.Reader) ([]string, error) { var lines []string scanner := bufio.NewScanner(r) for scanner.Scan() { lines = append(lines, scanner.Text()) } if err := scanner.Err(); err != nil { return nil, err } return lines, nil }