我正在尝试使用go制作网络抓取工具。我构建了这段代码。它没有任何错误,建造得很好。但它的二进制文件不会执行。
这是执行函数中的大量例程或那些变量的问题吗?
package main
import (
"io/ioutil"
"net/http"
//"regexp"
)
func excuter(count int) {
adrr := string("http://torhit.com/torbite/?page=" + string(count))
resp, _ := http.Get(adrr)
bytes, _ := ioutil.ReadAll(resp.Body)
ioutil.WriteFile("scrap.txt"+string(count), bytes, 0777)
resp.Body.Close()
}
func main() {
//re := regexp.MustCompile("")
count := 1
maxcount := 200
for ; count <= maxcount; count++ {
go excuter(count)
}
}
package main
import (
"io/ioutil"
"net/http"
//"regexp"
)
func excuter(count int) {
adrr := string("http://torhit.com/torbite/?page=" + string(count))
resp, _ := http.Get(adrr)
bytes, _ := ioutil.ReadAll(resp.Body)
ioutil.WriteFile("scrap.txt"+string(count), bytes, 0777)
resp.Body.Close()
}
func main() {
//re := regexp.MustCompile("")
count := 1
maxcount := 200
for ; count <= maxcount; count++ {
go excuter(count)
}
}
答案 0 :(得分:3)
也许你的错误来自于此:
string(count)
它会编译但结果为空。如果要将int转换为string,则需要strconv包。
strconv.Itoa(count)
或者
strconv.FormatInt(int64(count), 10)