主页 > 知识库 > Go语言通过http抓取网页的方法

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语言通过http抓取网页的方法》,本文关键词  语言,通过,http,抓取,网页,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《Go语言通过http抓取网页的方法》相关的同类信息!
  • 本页收集关于Go语言通过http抓取网页的方法的相关信息资讯供网民参考!
  • 推荐文章