bilibili-rename/avprovider.go

46 lines
1.0 KiB
Go

package main
import (
"encoding/json"
)
// epDataProvider中
// AVData av视频信息
type AVData struct {
Cid int64 `json:"cid"`
Dimension struct {
Height int64 `json:"height"`
Rotate int64 `json:"rotate"`
Width int64 `json:"width"`
} `json:"dimension"`
Duration int64 `json:"duration"`
From string `json:"from"`
Page int64 `json:"page"`
Part string `json:"part"`
Vid string `json:"vid"`
Weblink string `json:"weblink"`
}
// AVResponse av视频信息请求接口返回数据
type AVResponse struct {
Code int64 `json:"code"`
Data []AVData `json:"data"`
Message string `json:"message"`
TTL int64 `json:"ttl"`
}
// GetAVData 根据videoNo从bilibili获取av数据
func (provider *episodeDataProvider) GetAVData(avNo int64) (avdatas []AVData, err error) {
file, err := provider.dataSource.GetAVData(avNo)
if err != nil {
return avdatas, err
}
var resp AVResponse
err = json.Unmarshal(file, &resp)
if err != nil {
return avdatas, err
}
return resp.Data, nil
}