色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

go語言代碼中使用HTTP代理IP的方法

華益云HTTP爬蟲IP ? 來源:華益云HTTP爬蟲IP ? 作者:華益云HTTP爬蟲IP ? 2022-08-04 16:13 ? 次閱讀

如何在go語言代碼中使用HTTP代理IP。

以下代碼主要圍繞第一次接觸HTTP代理IP的go新手來寫(步驟注釋清晰)。

直接把下面示例代碼中的HTTP代理API,替換成你后臺生成的代理API鏈接,就可以跑起來了。

以下是一個示例代碼,只是一個基礎(chǔ)的演示,具體的代碼還是要根據(jù)你業(yè)務(wù)的實際情況去寫的。

示例代碼中的HTTP代理IP,我使用的是華益云的HTTP代理API,注冊就能白嫖1萬個高匿爬蟲IP,有效期是一年,對于調(diào)試代碼來說這個時間是非常的友好。

華益云-企業(yè)級HTTP爬蟲代理IP供應(yīng)商-點我免費領(lǐng)取示例代碼demo中同款10000個高匿IP

打開代理API,獲取里面的IP,使用IP訪問目標(biāo)網(wǎng)站,其實代碼中就是執(zhí)行這個過程而已,然后加了幾個錯誤判斷有助于代碼的穩(wěn)定運行。(步驟注釋清晰)

package main

import (
	"errors"
	"fmt"
	"io/ioutil"
	"log"
	"net/http"
	"net/url"
	"strings"
	"time"
)

func main() {
	// 發(fā)送給服務(wù)器的標(biāo)識
	userAgent := "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/532.36 (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/537.36"
	// 代理api(這里我推薦使用www.9vps.com華益云的HTTP代理API,注冊就送1萬IP)
	proxyUrl := "http://http.9vps.com/getip.asp?username=166xxxx6597&pwd=xxxxbaa59ce237dff65134984b9cxxxx&geshi=1&fenge=1&fengefu=&Contenttype=1&getnum=20&setcity=&operate=all&"
	outPutProxy, _ := getProxy(proxyUrl, userAgent)
	if len(outPutProxy) == 0 {
		// 沒有獲取到代理
		return
	}
	// 目標(biāo)請求網(wǎng)站
	url := "https://www.qq.com/"
	var out string = ""
	for i := 0; i < 3; i++ {
		// 最多嘗試三次
		px := outPutProxy[0]
		outPutProxy = append(outPutProxy[:0], outPutProxy[1:]...)
		fmt.Println("using proxy ", px)
		response, err := requestGet(url, userAgent, "http://"+px)
		out = fmt.Sprintf("%s", response)
		if err == nil {
			// 這里說明請求成功了,直接可以退出循環(huán)了
			fmt.Println(out)
			break
		} else {
			if len(outPutProxy) == 0 {
				// 沒有代理了再次獲取下
				outPutProxy, err = getProxy(proxyUrl, userAgent)
				if err != nil {
					log.Fatalln(err)
				}
			}
		}
	}
	// 最終的響應(yīng)內(nèi)容
	fmt.Println(out)
}
func getProxy(proxyUrl string, userAgent string) ([]string, error) {
	var outPutProxy []string
	proxyIps, err := requestGet(proxyUrl, userAgent, "")
	fmt.Println(proxyIps)
	if err != nil {
		return outPutProxy, err
	}
	// {"code":3002,"data":[],"msg":"error!用戶名或密碼錯誤","success":false}
	if strings.Index(proxyIps, "{") > -1 {
		return outPutProxy, errors.New(proxyIps)
	}
	outPutProxy = strings.Split(proxyIps, "\r\n")
	fmt.Printf("總共獲取了%d個代理\n", len(outPutProxy))
	return outPutProxy, nil

}

func requestGet(reqUrl string, userAgent string, proxyAddr string) (string, error) {
	var client http.Client
	if proxyAddr != "" {
		// 有代理的情況
		proxy, err := url.Parse(proxyAddr)
		if err != nil {
			return "", err
		}
		client = http.Client{
			Timeout:   5 * time.Second, // 5秒最大超時
			Transport: &http.Transport{Proxy: http.ProxyURL(proxy)},
		}
	} else {
		client = http.Client{
			Timeout: 5 * time.Second, // 5秒最大超時
		}
	}
	// 創(chuàng)建新的Request對象
	req, err := http.NewRequest("GET", reqUrl, nil)
	if err != nil {
		return "", err
	}
	// 設(shè)置請求頭
	req.Header.Set("user-agent", userAgent)
	// 向服務(wù)器發(fā)送請求
	resp, err := client.Do(req)
	if err != nil {
		return "", err
	}
	// 讀取響應(yīng)內(nèi)容
	body, err := ioutil.ReadAll(resp.Body)
	if err != nil {
		return "", err
	}
	// 將響應(yīng)內(nèi)容轉(zhuǎn)為string類型
	response := string(body)
	return response, nil
}

或者直接百度搜索:華益云HTTP代理

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • HTTP
    +關(guān)注

    關(guān)注

    0

    文章

    520

    瀏覽量

    32445
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4886

    瀏覽量

    70232
  • go語言
    +關(guān)注

    關(guān)注

    1

    文章

    158

    瀏覽量

    9284
收藏 0人收藏

    評論

    相關(guān)推薦
    熱點推薦

    如何在java代碼中使HTTP代理IP

    如何在java代碼中使HTTP代理IP
    的頭像 發(fā)表于 08-04 15:38 ?2426次閱讀

    python代碼中使HTTP代理IP,demo注釋清晰

    如何再python代碼中使HTTP代理IP。 以下代碼主要圍繞第一次接觸
    的頭像 發(fā)表于 08-04 15:40 ?1194次閱讀

    如何在python代碼中使HTTP代理IP

    如何在python代碼中使HTTP代理IP
    的頭像 發(fā)表于 08-04 15:46 ?1438次閱讀

    如何在PHP代碼中使HTTP代理IP

    如何在PHP代碼中使HTTP代理IP
    的頭像 發(fā)表于 08-04 16:08 ?2632次閱讀

    如何在易e語言代碼中使HTTP代理IP

    如何在易e語言代碼中使HTTP代理IP,示例代碼d
    的頭像 發(fā)表于 08-05 16:29 ?7233次閱讀

    如何在c語言代碼中使HTTP代理IP

    如何在c語言代碼中使HTTP代理IP,示例代碼de
    的頭像 發(fā)表于 08-05 16:31 ?2554次閱讀

    如何在c#語言代碼中使HTTP代理IP

    如何在c#語言代碼中使HTTP代理IP,示例代碼d
    的頭像 發(fā)表于 08-05 16:33 ?2928次閱讀

    python中怎么使用HTTP代理

    python中怎么使用HTTP代理,華益云高匿爬蟲代理ip
    的頭像 發(fā)表于 09-01 14:36 ?1808次閱讀

    PHP中怎么使用HTTP代理

    PHP中怎么使用HTTP代理,華益云高匿爬蟲代理ip
    的頭像 發(fā)表于 09-01 14:38 ?1921次閱讀

    go語言中怎么使用HTTP代理

    go語言中怎么使用HTTP代理
    的頭像 發(fā)表于 09-01 14:41 ?2607次閱讀

    e易語言中怎么使用HTTP代理

    e易語言中怎么使用HTTP代理
    的頭像 發(fā)表于 09-01 14:42 ?4115次閱讀

    c語言中怎么使用HTTP代理

    如何再c語言代碼中使HTTP代理IP
    的頭像 發(fā)表于 09-01 14:44 ?1604次閱讀

    c#語言中怎么使用HTTP代理

    c#語言中怎么使用HTTP代理
    的頭像 發(fā)表于 09-01 14:46 ?2326次閱讀

    python代碼中如何使用HTTP代理

    華益云HTTP代理API有效期是一年,也就是說一年內(nèi)這1萬IP用完就沒了,如果你一年都用不完那到時候剩余IP才會被清零,對于調(diào)試代碼來說時間
    的頭像 發(fā)表于 09-01 14:50 ?1036次閱讀

    如何在python代碼中使HTTP代理IP

    如何再python代碼中使HTTP代理IP
    的頭像 發(fā)表于 09-13 09:25 ?1193次閱讀
    主站蜘蛛池模板: 日韩做A爰片久久毛片A片毛茸茸 | 产传媒61国产免费 | 国内久经典AAAAA片 | 久色乳综合思思在线视频 | 飘雪在线观看免费完整版 | 午夜爽喷水无码成人18禁三级 | 中文字幕按摩 | 永久免费看mv网站入口 | 一道精品视频一区二区三区 | 国内精品视频在线播放一区 | 久久久久久久尹人综合网亚洲 | 亚州AV人片一区二区三区99久 | 啪啪激情婷婷久久婷婷色五月 | qvod伦理片 | 无码人妻丰满熟妇啪啪网不卡 | 俄罗斯6一12呦女精品 | 97人人看碰人免费公开视频 | 国产午夜久久影院 | 99热这里只有精品6 99热这里只有精品 99热这里只有的精品 | 中文字幕1| 伊人影院香蕉久在线26 | 美女张开腿露出尿口扒开来摸动漫 | 苍井空小公主qvod | 黄色免费网址在线观看 | 精品午夜国产福利观看 | 人妻无码AV中文系列 | 成人bt下载 | 亚洲国产亚综合在线区尤物 | 国产精选视频在线观看 | 亚洲精品福利一区二区在线观看 | 伊人网中文字幕 | 男生射女生 | 韩国女人高潮嗷嗷叫视频 | 一个人日本的视频免费完整版 | 久久久性色精品国产免费观看 | 日本无码毛片一区二区手机看 | 色欲天天婬色婬香影院 | 国产色无码精品视频国产 | np高h肉文| 领导边摸边吃奶边做爽在线观看 | 女人把腿张开叫男人桶免费视频 |

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學(xué)習(xí)
    • 獲取您個性化的科技前沿技術(shù)信息
    • 參加活動獲取豐厚的禮品