2
0
mirror of synced 2025-02-24 14:48:27 +00:00
torrent/cmd/scrape/main.go
Matt Joiner 771a08d4f4 Add a scrape command so I can work out if trackers are seeing my test clients
I don't even know if scrape is the right word.
2014-03-20 04:30:32 +11:00

40 lines
735 B
Go

package main
import (
"bitbucket.org/anacrolix/go.torrent"
"bitbucket.org/anacrolix/go.torrent/tracker"
_ "bitbucket.org/anacrolix/go.torrent/tracker/udp"
"flag"
metainfo "github.com/nsf/libtorgo/torrent"
"log"
"os"
)
func main() {
flag.Parse()
mi, err := metainfo.Load(os.Stdin)
if err != nil {
log.Fatal(err)
}
for _, tier := range mi.AnnounceList {
for _, url := range tier {
tr, err := tracker.New(url)
if err != nil {
log.Fatal(err)
}
err = tr.Connect()
if err != nil {
log.Fatal(err)
}
resp, err := tr.Announce(&tracker.AnnounceRequest{
NumWant: -1,
InfoHash: torrent.BytesInfoHash(mi.InfoHash),
})
if err != nil {
log.Fatal(err)
}
log.Print(resp)
}
}
}