// 高并发刷 "看雪论坛" 文章访问量
// By 邓文怡的粉丝
// 2022-10-22 15:32
package main
import (
"fmt"
"net/http"
"regexp"
"sync"
)
func main() {
fmt.Print("请输入链接:")
var url string
fmt.Scanln(&url)
//正则校验 https://bbs.pediy.com/thread-264417.htm
reg := regexp.MustCompile(`https://bbs.pediy.com/thread-\d+\.htm`)
if !reg.MatchString(url) {
fmt.Println("链接格式不正确")
return
}
fmt.Print("请输入要刷的次数:")
var num int
fmt.Scanln(&num)
fmt.Print("请输入并发数:")
var goroutineNum int
fmt.Scanln(&goroutineNum)
if goroutineNum < 1 {
fmt.Println("并发数不能小于1")
return
}
if num < goroutineNum {
fmt.Println("刷的次数不能小于并发数")
fmt.Println("刷的次数已自动设置为并发数")
num = goroutineNum
return
}
if num%2 != 0 {
num = (num + 1) / goroutineNum
} else {
num = num / goroutineNum
}
var count = new(int)
var wait sync.WaitGroup
for i := 1; i <= goroutineNum; i++ {
wait.Add(1)
go func(count *int) {
for j := 1; j <= num; j++ {
//获取网页内容
_, err := http.Get(url)
if err != nil {
fmt.Println("获取网页内容失败")
return
}
*count++
fmt.Printf("第%d次刷帖成功\n", *count)
}
wait.Done()
}(count)
}
wait.Wait()
fmt.Println("刷完了")
}
高并发刷 “看雪论坛“ 文章访问量
最新推荐文章于 2024-07-16 12:13:37 发布