diff --git a/Golang/liveurls/douyin.go b/Golang/liveurls/douyin.go index 4e9ae0b..0029999 100644 --- a/Golang/liveurls/douyin.go +++ b/Golang/liveurls/douyin.go @@ -58,13 +58,15 @@ func (d *Douyin) GetDouYinUrl() any { var realurl string value := gjson.Get(json, "data.data.0.stream_url.live_core_sdk_data.pull_data.stream_data") value.ForEach(func(key, value gjson.Result) bool { - switch d.Stream { - case "flv": - realurl = fmt.Sprintf("%s", gjson.Get(value.String(), "data.origin.main.flv")) - case "hls": - realurl = fmt.Sprintf("%s", gjson.Get(value.String(), "data.origin.main.hls")) + if gjson.Get(value.String(), "data.origin").Exists() { + switch d.Stream { + case "flv": + realurl = fmt.Sprintf("%s", gjson.Get(value.String(), "data.origin.main.flv")) + case "hls": + realurl = fmt.Sprintf("%s", gjson.Get(value.String(), "data.origin.main.hls")) + } } return true }) return realurl -} +} \ No newline at end of file