一、使用alt属性创建文件名
reImgName=`<img[\s\S]+?alt="(http[\s\S]+?)"`
和之前的src的正则不同之处就是将src改为了alt
reImg=`<img[\s\\S]+?src="(http[\s\S]+?)"`
将main函数里的reImg改成reImgName(这里的正则和前面爬取图片的正则是一样的)
re:=regexp.MustCompile(reImgName)
完整代码:
package main
import (
"fmt"
"io/ioutil"
"net/http"
"regexp"
)
var(
// <img ne-lazy="effect:fadeIn;tabIndex:1" data-original="http://cms-bucket.ws.126.net/2021/0813/df5e227ep00qxrq260045c000s600e3c.png?imageView&thumbnail=200y125&quality=85" alt="高手在民间!国内大神出手为华为P50 Pro加入5G" class="img960" width="200" height="125"/>
//<img ne-lazy
reImg=`<img[\s\\S]+?src="(http[\s\S]+?)"`
reImgName1=`<img[\s\S]+?alt="(http[\s\S]+?)"`
)
func Gethtml4(url string) string {
resp,_:=http.Get(url)
defer resp.Body.Close()
bytes,_:=ioutil.ReadAll(resp.Body)
html:=string(bytes)
return html
}
func main() {
html:=Gethtml4("https://www.163.com")
//fmt.Println(html)
re:=regexp.MustCompile(reImgName1)
rets:=re.FindAllStringSubmatch(html,-1)
fmt.Println("捕获图片张数:",len(rets))
for _,ret:=range rets{
fmt.Println(ret[1])
}