我正在使用来自亚马逊的golang colly拍照,我想将这些图片以JSON格式放入单个数组中(每个产品图像只有1个数组)。我抓取了我需要的图片,我只是JSON文件有问题。非常感谢你提前。


package main


import (

    "encoding/json"

    "fmt"

    "io/ioutil"

    "log"

    "os"

    "time"


    "github.com/gocolly/colly"

)


type Info struct {

    ID     int      `json:"id"`

    Images []string `json:"images"`

}


func main() {

    AllInfos := make([]Info, 0)


    start := time.Now()


    co := colly.NewCollector(

        colly.AllowedDomains("www.amazon.com", "amazon.com"),

    )


    // GET Images

    Counter := 0

    var info Info

    var theArray [10]string

    co.OnHTML("img[src]", func(e *colly.HTMLElement) {

        imgsrc := e.Attr("src")

        imgclass := e.Attr("class")


        if imgsrc[0:49] == "https://images-na.ssl-images-amazon.com/images/I/" && imgclass == "" {

            theArray[Counter] = imgsrc

            fmt.Printf("The Array %d %v", Counter, theArray[Counter]+"\n")

            Counter = Counter + 1

            co.Visit(e.Request.AbsoluteURL(imgsrc))


            info = Info{

                Images: []string{

                    theArray[0],

                    theArray[1],

                    theArray[2],

                    theArray[3],

                    theArray[4],

                    theArray[5],

                    theArray[6],

                },

            }

            AllInfos = append(AllInfos, info)

        }

    })