golang中的爬虫
生活随笔
收集整理的这篇文章主要介绍了
golang中的爬虫
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
简单爬虫
//爬取网页内容 func httpGet(url string) (result string, err error) {resp, err1 := http.Get(url)if err1 != nil {err = err1return}defer resp.Body.Close()//读取网页的内容buf := make([]byte, 1024*4)for {n, err := resp.Body.Read(buf)if n == 0 { //读取结束,或者出问题fmt.Println("resp.body err: ", err)break}result += string(buf[:n])}return }func DoWork(start, end int) {fmt.Printf("正在爬取 %d 到 %d的页面\n", start, end)//明确目标for i := start; i <= end; i++ {url := "https://tieba.baidu.com/f?kw=%E7%BB%9D%E5%9C%B0%E6%B1%82%E7%94%9F&ie=utf-8&pn=" + strconv.Itoa((i-1)*50)fmt.Println(url)//爬取页面result, err := httpGet(url)if err != nil {fmt.Println("http err: ", err)//跳出continue}fmt.Println("内容是: ", result)} }func main() {//https://tieba.baidu.com/f?kw=%E7%BB%9D%E5%9C%B0%E6%B1%82%E7%94%9F&ie=utf-8&pn=200var start, end intfmt.Println("请输入起始页( >= 1): ")fmt.Scan(&start)fmt.Printf("请输入终止页(>=起始页): ")fmt.Scan(&end)DoWork(start, end) }总结
以上是生活随笔为你收集整理的golang中的爬虫的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: golang中的http客户端
- 下一篇: QPS相关知识