• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Go语言通过http抓取网页的方法

    本文实例讲述了Go语言通过http抓取网页的方法。分享给大家供大家参考。具体实现方法如下:

    复制代码 代码如下:

    package main
    import (
     "fmt"
     "log"
     "net/http"
     "net/url"
     "io/ioutil"
    )
    //指定代理ip
    func getTransportFieldURL(proxy_addr *string) (transport *http.Transport) {
     url_i := url.URL{}
     url_proxy, _ := url_i.Parse(*proxy_addr)
     transport = http.Transport{Proxy : http.ProxyURL(url_proxy)}
     return
    }
    //从环境变量$http_proxy或$HTTP_PROXY中获取HTTP代理地址
    func getTransportFromEnvironment() (transport *http.Transport) {
     transport = http.Transport{Proxy : http.ProxyFromEnvironment}
     return
    }
    func fetch(url , proxy_addr *string) (html string) {
     transport := getTransportFieldURL(proxy_addr)
     client := http.Client{Transport : transport}
     req, err := http.NewRequest("GET", *url, nil)
     if err != nil {
      log.Fatal(err.Error())
     }
     resp, err := client.Do(req)
     if err != nil {
      log.Fatal(err.Error())
     }
     if resp.StatusCode == 200 {
      robots, err := ioutil.ReadAll(resp.Body);
      resp.Body.Close()
      if err != nil {
       log.Fatal(err.Error())
      }
      html = string(robots);
     } else {
      html = ""
     }
     return
    }
    func main() {
     proxy_addr := "http://183.221.250.137:80/"
     url := "http://www.baidu.com/s?wd=ip"
     html := fetch(url, proxy_addr)
     fmt.Println(html)
    }

    希望本文所述对大家的Go语言程序设计有所帮助。

    您可能感兴趣的文章:
    • go语言实现一个简单的http客户端抓取远程url的方法
    • golang如何实现抓取IP地址的蜘蛛程序详解
    • golang抓取网页并分析页面包含的链接方法
    上一篇:go语言睡眠排序算法实例分析
    下一篇:Go语言通过Luhn算法验证信用卡卡号是否有效的方法
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Go语言通过http抓取网页的方法 语言,通过,http,抓取,网页,