mirror of
https://github.com/cuiocean/ZY-Player.git
synced 2026-02-10 05:55:04 +08:00
改写zy.download以优化代码
This commit is contained in:
@@ -238,32 +238,12 @@ export default {
|
||||
}
|
||||
},
|
||||
downloadEvent () {
|
||||
const key = this.detail.key
|
||||
const id = this.info.id
|
||||
zy.download(key, id).then(res => {
|
||||
if (res && res.downloadUrls) {
|
||||
const list = res.downloadUrls
|
||||
let downloadUrl = ''
|
||||
for (const i of list) {
|
||||
const url = encodeURI(i.split('$')[1])
|
||||
downloadUrl += (url + '\n')
|
||||
}
|
||||
clipboard.writeText(downloadUrl)
|
||||
this.$message.success('调用下载接口获取到的链接已复制, 快去下载吧!')
|
||||
} else {
|
||||
zy.detail(key, id).then(res => {
|
||||
// 只使用第一个视频列表
|
||||
const list = [...res.fullList[0].list]
|
||||
let downloadUrl = ''
|
||||
for (const i of list) {
|
||||
const url = encodeURI(i.split('$')[1])
|
||||
downloadUrl += (url + '\n')
|
||||
}
|
||||
clipboard.writeText(downloadUrl)
|
||||
this.$message.success('视频源链接已复制, 快去下载吧!')
|
||||
})
|
||||
}
|
||||
}).catch((err) => { this.$message.error('无法获取到链接,请通过播放页面点击“调试”按钮获取', err) })
|
||||
zy.download(this.detail.key, this.info.id).then(res => {
|
||||
clipboard.writeText(res.downloadUrls)
|
||||
this.$message.success(res.info)
|
||||
}).catch((err) => {
|
||||
this.$message.error(err.info)
|
||||
})
|
||||
},
|
||||
shareEvent () {
|
||||
this.share = {
|
||||
|
||||
@@ -737,31 +737,12 @@ export default {
|
||||
}
|
||||
},
|
||||
downloadEvent (site, row) {
|
||||
const key = site.key
|
||||
const id = row.id
|
||||
zy.download(key, id).then(res => {
|
||||
if (res && res.downloadUrls) {
|
||||
const list = res.downloadUrls
|
||||
let downloadUrl = ''
|
||||
for (const i of list) {
|
||||
const url = encodeURI(i.split('$')[1])
|
||||
downloadUrl += (url + '\n')
|
||||
}
|
||||
clipboard.writeText(downloadUrl)
|
||||
this.$message.success('调用下载接口获取到的链接已复制, 快去下载吧!')
|
||||
} else {
|
||||
zy.detail(key, id).then(res => {
|
||||
const list = [...res.m3u8List]
|
||||
let downloadUrl = ''
|
||||
for (const i of list) {
|
||||
const url = encodeURI(i.split('$')[1])
|
||||
downloadUrl += (url + '\n')
|
||||
}
|
||||
clipboard.writeText(downloadUrl)
|
||||
this.$message.success('视频源链接已复制, 快去下载吧!')
|
||||
})
|
||||
}
|
||||
}).catch((err) => { this.$message.error('无法获取到链接,请通过播放页面点击“调试”按钮获取', err) })
|
||||
zy.download(site.key, row.id).then(res => {
|
||||
clipboard.writeText(res.downloadUrls)
|
||||
this.$message.success(res.info)
|
||||
}).catch((err) => {
|
||||
this.$message.error(err.info)
|
||||
})
|
||||
},
|
||||
querySearch (queryString, cb) {
|
||||
var searchList = this.searchList.slice(0, -1)
|
||||
|
||||
@@ -255,31 +255,12 @@ export default {
|
||||
}
|
||||
},
|
||||
downloadEvent (e) {
|
||||
const key = e.site
|
||||
const id = e.ids
|
||||
zy.download(key, id).then(res => {
|
||||
if (res && res.downloadUrls) {
|
||||
const list = res.downloadUrls
|
||||
let downloadUrl = ''
|
||||
for (const i of list) {
|
||||
const url = encodeURI(i.split('$')[1])
|
||||
downloadUrl += (url + '\n')
|
||||
}
|
||||
clipboard.writeText(downloadUrl)
|
||||
this.$message.success('调用下载接口获取到的链接已复制, 快去下载吧!')
|
||||
} else {
|
||||
zy.detail(key, id).then(res => {
|
||||
const list = [...res.m3u8List]
|
||||
let downloadUrl = ''
|
||||
for (const i of list) {
|
||||
const url = encodeURI(i.split('$')[1])
|
||||
downloadUrl += (url + '\n')
|
||||
}
|
||||
clipboard.writeText(downloadUrl)
|
||||
this.$message.success('视频源链接已复制, 快去下载吧!')
|
||||
})
|
||||
}
|
||||
}).catch((err) => { this.$message.error('无法获取到下载链接,请通过播放页面点击“调试”按钮获取', err) })
|
||||
zy.download(e.site, e.ids).then(res => {
|
||||
clipboard.writeText(res.downloadUrls)
|
||||
this.$message.success(res.info)
|
||||
}).catch((err) => {
|
||||
this.$message.error(err.info)
|
||||
})
|
||||
},
|
||||
exportHistory () {
|
||||
this.getAllhistory()
|
||||
|
||||
@@ -280,31 +280,12 @@ export default {
|
||||
}
|
||||
},
|
||||
downloadEvent (e) {
|
||||
const key = e.key
|
||||
const id = e.ids
|
||||
zy.download(key, id).then(res => {
|
||||
if (res && res.downloadUrls) {
|
||||
const list = res.downloadUrls
|
||||
let downloadUrl = ''
|
||||
for (const i of list) {
|
||||
const url = encodeURI(i.split('$')[1])
|
||||
downloadUrl += (url + '\n')
|
||||
}
|
||||
clipboard.writeText(downloadUrl)
|
||||
this.$message.success('调用下载接口获取到的链接已复制, 快去下载吧!')
|
||||
} else {
|
||||
zy.detail(key, id).then(res => {
|
||||
const list = [...res.m3u8List]
|
||||
let downloadUrl = ''
|
||||
for (const i of list) {
|
||||
const url = encodeURI(i.split('$')[1])
|
||||
downloadUrl += (url + '\n')
|
||||
}
|
||||
clipboard.writeText(downloadUrl)
|
||||
this.$message.success('视频源链接已复制, 快去下载吧!')
|
||||
})
|
||||
}
|
||||
}).catch((err) => { this.$message.error('无法获取到链接,请通过播放页面点击“调试”按钮获取', err) })
|
||||
zy.download(e.key, e.ids).then(res => {
|
||||
clipboard.writeText(res.downloadUrls)
|
||||
this.$message.success(res.info)
|
||||
}).catch((err) => {
|
||||
this.$message.error(err.info)
|
||||
})
|
||||
},
|
||||
getRecommendations () {
|
||||
recommendation.all().then(res => {
|
||||
|
||||
@@ -340,31 +340,12 @@ export default {
|
||||
})
|
||||
},
|
||||
downloadEvent (e) {
|
||||
const key = e.key
|
||||
const id = e.ids
|
||||
zy.download(key, id).then(res => {
|
||||
if (res && res.downloadUrls) {
|
||||
const list = res.downloadUrls
|
||||
let downloadUrl = ''
|
||||
for (const i of list) {
|
||||
const url = encodeURI(i.split('$')[1])
|
||||
downloadUrl += (url + '\n')
|
||||
}
|
||||
clipboard.writeText(downloadUrl)
|
||||
this.$message.success('调用下载接口获取到的链接已复制, 快去下载吧!')
|
||||
} else {
|
||||
zy.detail(key, id).then(res => {
|
||||
const list = [...res.m3u8List]
|
||||
let downloadUrl = ''
|
||||
for (const i of list) {
|
||||
const url = encodeURI(i.split('$')[1])
|
||||
downloadUrl += (url + '\n')
|
||||
}
|
||||
clipboard.writeText(downloadUrl)
|
||||
this.$message.success('视频源链接已复制, 快去下载吧!')
|
||||
})
|
||||
}
|
||||
}).catch((err) => { this.$message.error('无法获取到链接,请通过播放页面点击“调试”按钮获取', err) })
|
||||
zy.download(e.key, e.ids).then(res => {
|
||||
clipboard.writeText(res.downloadUrls)
|
||||
this.$message.success(res.info)
|
||||
}).catch((err) => {
|
||||
this.$message.error(err.info)
|
||||
})
|
||||
},
|
||||
getSiteName (row) {
|
||||
if (row.site) {
|
||||
|
||||
@@ -287,6 +287,8 @@ const zy = {
|
||||
*/
|
||||
download (key, id) {
|
||||
return new Promise((resolve, reject) => {
|
||||
let info = ''
|
||||
let downloadUrls = []
|
||||
this.getSite(key).then(res => {
|
||||
const site = res
|
||||
if (site.download) {
|
||||
@@ -296,23 +298,42 @@ const zy = {
|
||||
const json = parser.parse(data, this.xmlConfig)
|
||||
const jsondata = json.rss === undefined ? json : json.rss
|
||||
const videoList = jsondata.list.video
|
||||
var downloadUrls = []
|
||||
const dd = videoList.dl.dd
|
||||
const type = Object.prototype.toString.call(dd)
|
||||
if (type === '[object Array]') {
|
||||
for (const i of dd) {
|
||||
downloadUrls = i._t.split('#')
|
||||
downloadUrls = i._t.split('#').map(e => encodeURI(e.split('$')[1])).join('\n')
|
||||
}
|
||||
} else {
|
||||
downloadUrls = dd._t.split('#')
|
||||
downloadUrls = dd._t.split('#').map(e => encodeURI(e.split('$')[1])).join('\n')
|
||||
}
|
||||
videoList.downloadUrls = downloadUrls
|
||||
resolve(videoList)
|
||||
}).catch(err => {
|
||||
if (downloadUrls) {
|
||||
info = '调用下载接口获取到的链接已复制, 快去下载吧!'
|
||||
resolve({ downloadUrls: downloadUrls, info: info })
|
||||
} else {
|
||||
throw new Error()
|
||||
}
|
||||
}).catch((err) => {
|
||||
err.info = '无法获取到下载链接,请通过播放页面点击“调试”按钮获取'
|
||||
reject(err)
|
||||
})
|
||||
} else {
|
||||
resolve([])
|
||||
zy.detail(key, id).then(res => {
|
||||
const list = [...res.m3u8List]
|
||||
for (const i of list) {
|
||||
const url = encodeURI(i.split('$')[1])
|
||||
downloadUrls += (url + '\n')
|
||||
}
|
||||
if (downloadUrls) {
|
||||
info = '视频源链接已复制, 快去下载吧!'
|
||||
resolve({ downloadUrls: downloadUrls, info: info })
|
||||
} else {
|
||||
throw new Error()
|
||||
}
|
||||
}).catch((err) => {
|
||||
err.info = '无法获取到下载链接,请通过播放页面点击“调试”按钮获取'
|
||||
reject(err)
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user