package dyjx import ( "dysy/models" "encoding/json" "fmt" "github.com/asmcos/requests" "net/http" "strings" "testing" ) //https://v.douyin.com/JvTooa3/ func Test_UrlJx(t *testing.T) { fmt.Println("test") str := "" baseHost := "https://v.douyin.com/JvTooa3/" client := &http.Client{ CheckRedirect: func(req *http.Request, via []*http.Request) error { return http.ErrUseLastResponse }, } res, err := client.Get(baseHost) if err != nil { fmt.Println(baseHost) } if res.StatusCode != 301 { fmt.Println(baseHost) //return baseHost } fmt.Println(res.Header.Get("Location")) str = res.Header.Get("Location") //str := "https://www.iesdouyin.com/share/video/6921910683072220429/?region=CN&mid=6921910756871670541&u_code=121d24j2h&titleType=title&did=67754443383&iid=650526374502219&utm_source=copy_link&utm_campaign=client_share&utm_medium=android&app=aweme" comma := strings.Index(str, "/video/") pos := strings.Index(str, "/?") fmt.Println(comma, pos, str[comma+7:pos]) var inData models.DyJieXi baseHost = "https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids=" + str[comma+7:pos] req := requests.Requests() resp, err := req.Get(baseHost) fmt.Println(resp.Text()) if err != nil { fmt.Println(err.Error()) } err = json.Unmarshal([]byte(resp.Text()), &inData) if err != nil { fmt.Println() } fmt.Println(inData) //视频url var videoUrl = inData.ItemList[0].Video.PlayAddr.URLList[0] fmt.Println(inData.ItemList[0].Video.PlayAddr.URLList[0]) fmt.Println(inData.ItemList[0].Video.PlayAddr.URI) fmt.Println(strings.Replace(videoUrl, "playwm", "play", 1)) //音频url //musicUrl = dyResult.getItem_list().get(0).getMusic().getPlay_url().getUri(); //dyDto.setMusicUrl(musicUrl); fmt.Println(inData.ItemList[0].Music.PlayURL.URI) fmt.Println(inData.ItemList[0].Music.PlayURL.URLList[0]) //videoPic = dyResult.getItem_list().get(0).getVideo().getDynamic_cover().getUrl_list().get(0); //dyDto.setVideoPic(videoPic); //封面 fmt.Println(inData.ItemList[0].Video.DynamicCover.URLList[0]) //文案 //desc = dyResult.getItem_list().get(0).getDesc(); // dyDto.setDesc(desc); fmt.Println(inData.ItemList[0].Desc) //https://www.iesdouyin.com/share/video/6921910683072220429/?region=CN&mid=6921910756871670541&u_code=121d24j2h&titleType=title&did=67754443383&iid=650526374502219&utm_source=copy_link&utm_campaign=client_share&utm_medium=android&app=aweme }