Skip to content

Commit e80dcc5

Browse files
committed
Add language column
1 parent a6679d0 commit e80dcc5

File tree

1 file changed

+23
-15
lines changed

1 file changed

+23
-15
lines changed

Main.go

Lines changed: 23 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package main
33
import (
44
"database/sql"
55
"fmt"
6+
"github.com/go-sql-driver/mysql"
67
_ "github.com/go-sql-driver/mysql"
78
"github.com/gocolly/colly"
89
"github.com/rakanalh/scheduler"
@@ -49,20 +50,15 @@ func main() {
4950
checkErr(err)
5051
memStorage := storage.NewMemoryStorage()
5152
s := scheduler.New(memStorage)
52-
5353
fmt.Println("Im good at school three huna worldwide")
54-
55-
stmt, err := db.Prepare("INSERT INTO IE (fullurl, codedate, codekey, size, codelines, language, " +
56-
"status, txt) VALUES (?,?,?,?,?,?,?,?)")
57-
58-
if _, err := s.RunEvery(30 * time.Second, scrapIdeone, db, stmt); err != nil {
54+
if _, err := s.RunEvery(40 * time.Second, scrapIdeone, db); err != nil {
5955
log.Fatal(err)
6056
}
6157
s.Start()
6258
s.Wait()
6359
}
6460

65-
func scrapIdeone(db *sql.DB, stmt *sql.Stmt) {
61+
func scrapIdeone(db *sql.DB) {
6662
links, result := getRecentLinks()
6763
//jdbc:mariadb://192.168.1.65:3306/ideone
6864

@@ -82,19 +78,31 @@ func scrapIdeone(db *sql.DB, stmt *sql.Stmt) {
8278
} else {
8379
defer response.Body.Close()
8480
html, err := ioutil.ReadAll(response.Body)
85-
var txt string = string(html)
81+
print(response.Header.Get("Content-Disposition"))
82+
get := response.Header.Get("Content-Disposition")
83+
fmt.Println("get: ", get)
84+
start := strings.Index(get, "=\"")
85+
fmt.Println(start)
86+
filename := get[(start + 1):]
87+
language := filename[strings.Index(filename, ".")+1 : len(filename)-1]
88+
89+
var txt = string(html)
8690
fmt.Println(len(html))
87-
91+
stmt, err := db.Prepare("INSERT INTO IE (fullurl, codedate, codekey, size, codelines, language, " +
92+
"status, txt) VALUES (?,?,?,?,?,?,?,?)")
8893
checkErr(err)
8994

9095
currentTime := time.Now()
91-
res, err := stmt.Exec(url, currentTime.Format("2006-01-02 15:04:05"), k[1:], len(html),
92-
strings.Count(txt, "\n"), "language", results[i], txt)
93-
if res == nil {
94-
96+
_, err = stmt.Exec(url, currentTime.Format("2006-01-02 15:04:05"), k[1:], len(html),
97+
strings.Count(txt, "\n"), language, results[i], txt)
98+
if err != nil {
99+
me, _ := err.(*mysql.MySQLError)
100+
if me.Number == 1062 {
101+
fmt.Println("It already exists in a database. ", err)
102+
} else {
103+
checkErr(err)
104+
}
95105
}
96-
checkErr(err)
97-
98106
}
99107

100108
fmt.Println(result[i], ", ", url)

0 commit comments

Comments
 (0)