【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】
目前,网上关于网页爬行的代码很多。但是,自从看了go语言的web下载代码之后,我才发现原来它的网页下载代码才是最简单的。不信的话,大家可以看一下,
package main import( "fmt" "log" "net/http" "os" ) func main(){ resp,err:=http.Get("http://www.baidu.com") if err!=nil{ //handleerror fmt.Println(err) log.Fatal(err) } defer resp.Body.Close() if resp.StatusCode==http.StatusOK{ fmt.Println(resp.StatusCode) } buf:=make([]byte,1024) //createfile f,err1:=os.OpenFile("baidu.html",os.O_RDWR|os.O_CREATE|os.O_APPEND,os.ModePerm) if err1!=nil{ panic(err1) return } defer f.Close() for{ n,_:=resp.Body.Read(buf) if 0==n{ break } f.WriteString(string(buf[:n])) } }
这其中大家可以注意这几个函数就可以了,分别是http.Get,os.OpenFile,resp.Body.Read,f.WriteString。可以想象一下这几个函数是做什么用的。其实正如它们名字介绍的那样,它们的功能依次是http下载、创建文件、读取字符、写文件。不知道大家答对没有。有兴趣的朋友可以将这部分代码拷贝下来测试一下。
如果我没有记错,这部分代码是从别处引用的。欢迎作者和我联系,我会在后面备注一下。
版权声明:本文为博主原创文章,未经博主允许不得转载。
有疑问加站长微信联系(非本文作者)