arnaucube
arnaucube/argosPublic Self-hosted repository
argos/analyzeUsername.go
analyzeUsername.goRaw
 1package main
 2
 3import (
 4	"bufio"
 5	"fmt"
 6	"os"
 7	"strings"
 8
 9	"github.com/dghubble/go-twitter/twitter"
10)
11
12type Tweet struct {
13	text string `json: "Text"`
14}
15
16var words = make(map[string]int)
17
18func mapWords(text string) {
19	s := strings.Split(text, " ")
20
21	for _, v := range s {
22		if _, ok := words[v]; ok {
23			words[v] = words[v] + 1
24		} else {
25			words[v] = 1
26		}
27	}
28}
29
30func analyzeUsername(client *twitter.Client) {
31	newcommand := bufio.NewReader(os.Stdin)
32	fmt.Print("enter username: @")
33	username, _ := newcommand.ReadString('\n')
34	username = strings.TrimSpace(username)
35	fmt.Println("user selected: " + username)
36
37	fmt.Println("-----------------------")
38
39	tweets, _, _ := client.Timelines.UserTimeline(&twitter.UserTimelineParams{
40		ScreenName: username,
41		Count:      200,
42	})
43
44	for _, v := range tweets {
45		mapWords(v.Text)
46	}
47
48	fmt.Println(len(words))
49	_ = sortMap(words)
50}