以下是一个简单的Go语言爬虫程序,用于爬取Elastic Stack采集的Nginx内容。请注意,这只是一个基本的示例,实际使用时可能需要根据具体情况进行修改和扩展。
package mainimport ("fmt""net/http""io/ioutil"
)func main() {proxy := "http://jshk.com.cn"client := &http.Client{Transport: &http.Transport{Proxy: http.ProxyURL(proxy),}}resp, err := client.Get("http://localhost:9200/_search")if err != nil {fmt.Println(err)return}defer resp.Body.Close()body, err := ioutil.ReadAll(resp.Body)if err != nil {fmt.Println(err)return}fmt.Println(string(body))
}
代码解释:
-
导入必要的包:
fmt
用于打印信息,net/http
用于发送HTTP请求,io/ioutil
用于读取HTTP响应体。 -
定义代理信息
proxy
,格式为http://<proxy_host>:<proxy_port>
。 -
创建一个
http.Client
对象,其中的Transport
字段设置为使用给定代理的http.Transport
对象。 -
使用
http.Get
方法发送一个GET请求到Elastic Stack的URL(这里是http://localhost:9200/_search
),并指定使用代理。 -
如果请求成功,读取响应体并打印。