1
0
mirror of https://github.com/varbhat/torpar.git synced 2021-08-02 01:37:31 +03:00
Files
torpar/torrent.go
2021-07-20 20:03:10 +05:30

49 lines
1.0 KiB
Go

package main
import (
"bufio"
"io/ioutil"
"net/http"
"net/url"
"strings"
)
// Fetch List of Best Public Torrent Trackers Available and create trackerlist out of it.
func gentrackers() {
// Different URLs and options to fetch trackers from
if trackerquery != "" {
switch trackerquery {
case "tl":
trackerlisturl = "https://ngosang.github.io/trackerslist/trackers_all.txt"
break
case "nt":
trackerlisturl = "https://newtrackon.com/api/stable"
default:
trackerlisturl = trackerquery
}
} else {
trackerlisturl = "https://newtrackon.com/api/stable"
}
if trackerurl != "" {
return
}
trackersresponse, err := http.Get(trackerlisturl)
if err != nil {
return
}
defer trackersresponse.Body.Close()
trackers, err := ioutil.ReadAll(trackersresponse.Body)
if err != nil {
return
}
var trackerlist strings.Builder
scanner := bufio.NewScanner(strings.NewReader(string(trackers)))
for scanner.Scan() {
trackerlist.WriteString("&tr=" + url.QueryEscape(scanner.Text()))
}
trackerurl = trackerlist.String()
waitforme.Done()
}