requests
程序员文章站
2022-05-07 10:56:49
...
package main
import (
"net/http"
"bytes"
"strconv"
"regexp"
"golang.org/x/text/transform"
"golang.org/x/text/encoding/simplifiedchinese"
"io/ioutil"
)
var(
handlerErr = Error{}
)
type Requests struct {}
func (r Requests) Get(url string) string{
client := http.Client{}
request,err := http.NewRequest("GET", url, nil)
handlerErr.logFatal(err)
response, err := client.Do(request)
handlerErr.logFatal(err)
if response.StatusCode == 200{
buf := new(bytes.Buffer)
buf.ReadFrom(response.Body)
return buf.String()
}else {
return strconv.Itoa(response.StatusCode)
}
}
func (r Requests) gbk2utf8(s []byte)([]byte, error){
reader := transform.NewReader(bytes.NewReader(s), simplifiedchinese.GBK.NewDecoder())
d, e := ioutil.ReadAll(reader)
if e != nil {
return nil, e
}
return d, nil
}
func (r Requests) gbk2utf8Str(s string)(string, error){
b,err := r.gbk2utf8(r.str2byte(s))
return string(b),err
}
func (r Requests) str2byte(s string)[]byte{
return []byte(s)
}
func (r Requests) findAllSubMatch(target string, pattern *regexp.Regexp) [][]string{
return pattern.FindAllStringSubmatch(target, -1)
}
上一篇: 9.20任务
下一篇: 【第4章】4.4任务
推荐阅读
-
使用php的HTTP请求的库Requests实现美女图片墙,
-
requests 处理异常错误 requests.exceptions.ConnectionError HTTPSConnectionPool [Errno 10060]
-
基于python requests selenium爬取excel vba过程解析
-
爬虫---requests模块简单使用
-
python采用requests+bs4爬取豆瓣top250电影信息
-
python3+requests:使用类封装接口测试脚本
-
python中如何使用requests模块下载文件并获取进度提示?
-
使用requests下载文件并显示网速和下载进度
-
使用requests下载文件并显示网速和下载进度
-
Python笔记-使用requests获取网页数据及re中用正则表达式获取指定数据