【发布时间】:2021-12-07 08:56:48
【问题描述】:
我正在使用 Go 语言和构建在 Go 中的 colly 网络抓取框架开发小型网络抓取应用程序
这是网站的html代码
<div clas="cc">
<div class="list">
<span class="countrybg" style="background-image: url(countryimage);"></span>
<span class="continet">Asia</span>
<span class="country">india</span>
</div>
<div class="list">
<span class="countrybg" style="background-image: url(countryimage);"></span>
<span class="continet">Africa</span>
<span class="country">Brazil</span>
</div>
</div>
现在我想一一获取所有三个跨度元素并附加到数组
我尝试使用此代码,但它不起作用,但它返回为 AsiaAfrica
但我想要单独的值并想获取 countrybg 类的图像 url
c := make([]string, 10)
element.ForEach(".list span", func(_ int, elem *colly.HTMLElement) {
result := element.ChildText("span:nth-child(2)")
c = append(c, result)
})
示例输出应该是这样的
countrybg = ['image1url' ,'image2url']
continet = ['Asia' ,'Africa']
country = ['india' ,'Brazil']
谁能帮忙搞定这个
【问题讨论】:
-
我实际上并不知道 colly 是如何工作的,但看起来您在
element.ForEach回调中使用了element。也许你应该使用elem