GO爬虫-爬取手机号

 

正则爬取手机号

结果:

GO爬虫-爬取手机号

代码:

package main

import (
    "fmt"
    "io/ioutil"
    "net/http"
    "os"
    "regexp"
)

var (
    rePhone = `(1[3456789]\d)(\d{4})(\d{4})`
)

func HandleError(err error, when string) {
    if err != nil {
        fmt.Println(when, err)
        os.Exit(1)
    }
}

func main() {
    //http get请求页面
    resp, err := http.Get("https://www.haomagujia.com/")

    //处理报错
    HandleError(err, "http.Get")

    //读取整体获取的页面内容
    bytes, _ := ioutil.ReadAll(resp.Body)
    html := string(bytes)
    //fmt.Println(html)

    //使用正则表达式对象在网页中过滤出手机号信息
    re := regexp.MustCompile(rePhone)
    //-1 代表匹配全部
    allString := re.FindAllStringSubmatch(html, -1)
    for _, x := range allString {
        fmt.Println(x)
    }

}