mirror of
https://github.com/cuiocean/ZY-Player.git
synced 2026-02-15 00:16:26 +08:00
Compare commits
17 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5e37ef32fd | ||
|
|
85525745a1 | ||
|
|
c7f581a088 | ||
|
|
a88dfb1bc3 | ||
|
|
410cd8fc1a | ||
|
|
bb30be3c4d | ||
|
|
6230c9e87a | ||
|
|
93efb64211 | ||
|
|
3c4dd91d36 | ||
|
|
45041fdab1 | ||
|
|
bcf0613ff0 | ||
|
|
3107b851c5 | ||
|
|
b27883ad0f | ||
|
|
e0c3502c3f | ||
|
|
4c2db002eb | ||
|
|
898f769d24 | ||
|
|
d6549c6a6b |
10
.github/workflows/x86.yml
vendored
10
.github/workflows/x86.yml
vendored
@@ -1,4 +1,4 @@
|
||||
name: release-build
|
||||
name: x86-release-build
|
||||
|
||||
on:
|
||||
push:
|
||||
@@ -25,11 +25,3 @@ jobs:
|
||||
shell: pwsh
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Upload artifact
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: dist_electron
|
||||
path: dist_electron/*.exe
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
5800
package-lock.json
generated
5800
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
26
package.json
26
package.json
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "zy",
|
||||
"version": "2.8.5",
|
||||
"version": "2.8.6",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"serve": "vue-cli-service serve",
|
||||
@@ -17,15 +17,16 @@
|
||||
},
|
||||
"main": "background.js",
|
||||
"dependencies": {
|
||||
"axios": "^0.21.1",
|
||||
"@electron/remote": "^2.0.8",
|
||||
"axios": "^0.21.2",
|
||||
"bootstrap-vue": "^2.21.2",
|
||||
"cheerio": "^1.0.0-rc.6",
|
||||
"cheerio": "1.0.0-rc.6",
|
||||
"core-js": "^3.10.2",
|
||||
"dexie": "^3.0.3",
|
||||
"dexie": "^3.2.2",
|
||||
"electron-localshortcut": "^3.2.1",
|
||||
"electron-proxy-agent": "^1.2.0",
|
||||
"electron-updater": "^4.3.8",
|
||||
"element-ui": "^2.15.1",
|
||||
"element-ui": "^2.15.9",
|
||||
"fast-xml-parser": "^3.19.0",
|
||||
"html2canvas": "^1.0.0-rc.7",
|
||||
"iptv-playlist-parser": "^0.6.0",
|
||||
@@ -40,7 +41,7 @@
|
||||
"session": "^0.1.0",
|
||||
"sortablejs": "^1.13.0",
|
||||
"v-fit-columns": "^0.2.0",
|
||||
"vue": "^2.6.12",
|
||||
"vue": "^2.6.14",
|
||||
"vue-infinite-loading": "^2.4.5",
|
||||
"vue-waterfall-plugin": "^1.1.0",
|
||||
"vuedraggable": "^2.24.3",
|
||||
@@ -52,23 +53,14 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"@vue/cli-plugin-babel": "~4.5.11",
|
||||
"@vue/cli-plugin-eslint": "~4.5.11",
|
||||
"@vue/cli-plugin-vuex": "~4.5.11",
|
||||
"@vue/cli-service": "~4.5.11",
|
||||
"@vue/eslint-config-standard": "^6.0.0",
|
||||
"babel-eslint": "^10.1.0",
|
||||
"babel-plugin-component": "^1.1.1",
|
||||
"electron": "^11.3.0",
|
||||
"electron": "^16.0.0",
|
||||
"electron-devtools-installer": "^3.1.1",
|
||||
"eslint": "^7.20.0",
|
||||
"eslint-plugin-import": "^2.22.1",
|
||||
"eslint-plugin-node": "^11.1.0",
|
||||
"eslint-plugin-promise": "^4.3.1",
|
||||
"eslint-plugin-standard": "^4.1.0",
|
||||
"eslint-plugin-vue": "^7.6.0",
|
||||
"sass": "^1.30.0",
|
||||
"sass-loader": "^10.1.0",
|
||||
"vue-cli-plugin-electron-builder": "2.0.0-rc.6",
|
||||
"vue-template-compiler": "^2.6.12"
|
||||
"vue-template-compiler": "^2.6.14"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
|
||||
<script>
|
||||
import { setting } from './lib/dexie'
|
||||
const { remote } = require('electron')
|
||||
const remote = require('@electron/remote')
|
||||
export default {
|
||||
name: 'App',
|
||||
data () {
|
||||
|
||||
@@ -4,7 +4,10 @@ import { app, protocol, BrowserWindow, globalShortcut } from 'electron'
|
||||
import { createProtocol } from 'vue-cli-plugin-electron-builder/lib'
|
||||
import installExtension, { VUEJS_DEVTOOLS } from 'electron-devtools-installer'
|
||||
import { initUpdater } from './lib/update/update'
|
||||
require('@electron/remote/main').initialize()
|
||||
|
||||
const isDevelopment = process.env.NODE_ENV !== 'production'
|
||||
|
||||
// const log = require('electron-log') // 用于调试主程序
|
||||
|
||||
app.commandLine.appendSwitch('disable-features', 'OutOfBlinkCors') // 允许跨域
|
||||
@@ -22,8 +25,8 @@ function createWindow () {
|
||||
resizable: true,
|
||||
webPreferences: {
|
||||
webSecurity: false,
|
||||
enableRemoteModule: true,
|
||||
nodeIntegration: process.env.ELECTRON_NODE_INTEGRATION,
|
||||
nodeIntegration: true,
|
||||
contextIsolation: false,
|
||||
allowRunningInsecureContent: false
|
||||
}
|
||||
})
|
||||
@@ -35,12 +38,13 @@ function createWindow () {
|
||||
createProtocol('app')
|
||||
win.loadURL('app://./index.html')
|
||||
}
|
||||
|
||||
|
||||
// 修改request headers
|
||||
// Sec-Fetch下禁止修改,浏览器自动加上请求头 https://www.cnblogs.com/fulu/p/13879080.html 暂时先用index.html的meta referer policy替代
|
||||
const filter = {
|
||||
urls: ['http://*/*', 'http://*/*']
|
||||
}
|
||||
require("@electron/remote/main").enable(win.webContents)
|
||||
win.webContents.session.webRequest.onBeforeSendHeaders(filter, (details, callback) => {
|
||||
const url = new URL(details.url)
|
||||
details.requestHeaders.Origin = url.origin
|
||||
|
||||
@@ -150,9 +150,9 @@
|
||||
import { mapMutations } from 'vuex'
|
||||
import { sites, setting } from '../lib/dexie'
|
||||
import zy from '../lib/site/tools'
|
||||
import { remote } from 'electron'
|
||||
import fs from 'fs'
|
||||
import Sortable from 'sortablejs'
|
||||
const remote = require('@electron/remote')
|
||||
|
||||
export default {
|
||||
name: 'editSites',
|
||||
|
||||
@@ -529,6 +529,9 @@ export default {
|
||||
})
|
||||
break
|
||||
}
|
||||
|
||||
// Get unique film data
|
||||
filteredData = Array.from(new Set(filteredData))
|
||||
if (this.showFind) {
|
||||
this.filteredSearchContents = filteredData
|
||||
} else {
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
const { remote } = require('electron')
|
||||
const remote = require('@electron/remote')
|
||||
export default {
|
||||
name: 'frame',
|
||||
computed: {
|
||||
|
||||
@@ -154,9 +154,9 @@
|
||||
import { mapMutations } from 'vuex'
|
||||
import { history, sites, setting } from '../lib/dexie'
|
||||
import zy from '../lib/site/tools'
|
||||
import { remote } from 'electron'
|
||||
import fs from 'fs'
|
||||
import Waterfall from 'vue-waterfall-plugin'
|
||||
const remote = require('@electron/remote')
|
||||
const { clipboard } = require('electron')
|
||||
|
||||
export default {
|
||||
|
||||
@@ -110,10 +110,10 @@ import { mapMutations } from 'vuex'
|
||||
import { iptv, channelList, setting } from '../lib/dexie'
|
||||
import { iptv as defaultChannels } from '../lib/dexie/initData'
|
||||
import zy from '../lib/site/tools'
|
||||
import { remote } from 'electron'
|
||||
import fs from 'fs'
|
||||
import Sortable from 'sortablejs'
|
||||
import axios from 'axios'
|
||||
const remote = require('@electron/remote')
|
||||
export default {
|
||||
name: 'iptv',
|
||||
data () {
|
||||
|
||||
@@ -260,7 +260,8 @@ import Clickoutside from 'element-ui/src/utils/clickoutside'
|
||||
import { exec, execFile } from 'child_process'
|
||||
import PinyinMatch from 'pinyin-match'
|
||||
|
||||
const { remote, clipboard } = require('electron')
|
||||
const { clipboard } = require('electron')
|
||||
const remote = require('@electron/remote')
|
||||
const win = remote.getCurrentWindow()
|
||||
const URL = require('url')
|
||||
const VIDEO_DETAIL_CACHE = {}
|
||||
|
||||
@@ -166,7 +166,7 @@ export default {
|
||||
filteredList: [],
|
||||
// 不同推荐
|
||||
recommendationsDefault: [],
|
||||
recommendationTypes: ['豆瓣热门电影', '豆瓣高分电影', '豆瓣冷门佳片', '豆瓣热门剧集', '豆瓣热门美剧', '豆瓣热门英剧', '豆瓣热门国产剧', '豆瓣热门综艺', '豆瓣热门动漫', '豆瓣热门纪录片', '豆瓣热门动画电影'],
|
||||
recommendationTypes: ['豆瓣热门电影', '豆瓣高分电影', '豆瓣华语电影', '豆瓣冷门佳片', '豆瓣热门剧集', '豆瓣热门美剧', '豆瓣热门英剧', '豆瓣热门国产剧', '豆瓣热门综艺', '豆瓣热门动漫', '豆瓣热门纪录片', '豆瓣热门动画电影'],
|
||||
selectedRecommendationType: '豆瓣热门电影',
|
||||
// Toolbar
|
||||
showToolbar: false,
|
||||
@@ -201,7 +201,9 @@ export default {
|
||||
hotChineseTVSeriesPageStart: 0,
|
||||
hotChineseTVSeries: [],
|
||||
goodButNotHotMoviesPageStart: 0,
|
||||
goodButNotHotMovies: []
|
||||
goodButNotHotMovies: [],
|
||||
chineseMoviesPageStart: 0,
|
||||
chineseMovies: []
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -304,6 +306,9 @@ export default {
|
||||
if (this.selectedRecommendationType === '豆瓣冷门佳片') {
|
||||
this.recommendations = [...this.douban.goodButNotHotMovies]
|
||||
}
|
||||
if (this.selectedRecommendationType === '豆瓣华语电影') {
|
||||
this.recommendations = [...this.douban.chineseMovies]
|
||||
}
|
||||
if (this.recommendations.length === 0) {
|
||||
this.updateDoubanRecommendationsEvent()
|
||||
}
|
||||
@@ -358,6 +363,9 @@ export default {
|
||||
if (this.selectedRecommendationType === '豆瓣冷门佳片') {
|
||||
this.douban.goodButNotHotMovies.push(movie)
|
||||
}
|
||||
if (this.selectedRecommendationType === '豆瓣华语电影') {
|
||||
this.douban.chineseMovies.push(movie)
|
||||
}
|
||||
},
|
||||
searchAndCacheMovie (element) {
|
||||
zy.searchFirstDetail(this.sites[0].key, element.title).then(detailRes => {
|
||||
@@ -448,6 +456,10 @@ export default {
|
||||
doubanUrl = `https://movie.douban.com/j/search_subjects?type=movie&tag=冷门佳片&sort=recommend&page_limit=${this.douban.page_limit}&page_start=${this.douban.goodButNotHotMoviesPageStart}`
|
||||
this.douban.goodButNotHotMoviesPageStart = this.douban.goodButNotHotMoviesPageStart + this.douban.page_limit
|
||||
}
|
||||
if (this.selectedRecommendationType === '豆瓣华语电影') {
|
||||
doubanUrl = `https://movie.douban.com/j/search_subjects?type=movie&tag=华语&sort=recommend&page_limit=${this.douban.page_limit}&page_start=${this.douban.chineseMoviesPageStart}`
|
||||
this.douban.chineseMoviesPageStart = this.douban.chineseMoviesPageStart + this.douban.page_limit
|
||||
}
|
||||
this.getRecommendationsDoubanMovieOrTV(doubanUrl)
|
||||
},
|
||||
toggleViewMode () {
|
||||
|
||||
@@ -5,9 +5,7 @@
|
||||
<div class="info">
|
||||
<a @click="linkOpen('http://zyplayer.fun/')">官网</a>
|
||||
<a @click="linkOpen('https://github.com/Hunlongyu/ZY-Player')">Github</a>
|
||||
<a @click="linkOpen('https://github.com/Hunlongyu/ZY-Player/releases/tag/v' + pkg.version)">v{{pkg.version}}更新日志</a>
|
||||
<a @click="linkOpen('https://github.com/Hunlongyu/ZY-Player/issues/80')">常见问题</a>
|
||||
<a @click="linkOpen('https://github.com/Hunlongyu/ZY-Player/issues')">反馈建议</a>
|
||||
<a @click="linkOpen('https://github.com/Hunlongyu/ZY-Player/discussions/776')">软件完全免费,如遇收费,请立即给差评并退费!</a>
|
||||
<a style="color:#38dd77" @click="openUpdate()" v-show="update.find" >最新版本v{{update.version}}</a>
|
||||
</div>
|
||||
<div class="shortcut">
|
||||
@@ -148,13 +146,6 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="qrcode">
|
||||
<div class="title">请作者吃辣条</div>
|
||||
<div class="qrcode-box">
|
||||
<img class="qrcode-item" src="../assets/image/wepay-hunlongyu.png">
|
||||
<img class="qrcode-item" src="../assets/image/wepay_cuiocean.jpg">
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearDB">
|
||||
<span @click="clearDBEvent" class="clearBtn">软件重置</span>
|
||||
<span @click="changePasswordEvent" class="clearBtn">设置密码</span>
|
||||
@@ -265,7 +256,8 @@ import { mapMutations } from 'vuex'
|
||||
import pkg from '../../package.json'
|
||||
import { setting, sites, shortcut } from '../lib/dexie'
|
||||
import { localKey as defaultShortcuts } from '../lib/dexie/initData'
|
||||
import { shell, clipboard, remote, ipcRenderer } from 'electron'
|
||||
import { shell, clipboard, ipcRenderer } from 'electron'
|
||||
const remote = require('@electron/remote')
|
||||
import db from '../lib/dexie/dexie'
|
||||
import zy from '../lib/site/tools'
|
||||
export default {
|
||||
@@ -390,7 +382,7 @@ export default {
|
||||
this.updateSettingEvent()
|
||||
},
|
||||
resetDefaultSitesDataURL () {
|
||||
this.setting.sitesDataURL = 'https://gitee.com/cuiocean/ZY-Player-Resources/raw/main/Sites/Sites.json'
|
||||
this.setting.sitesDataURL = 'https://raw.iqiq.io/Hunlongyu/ZY-Player-Resources/main/Sites/20220713.json'
|
||||
},
|
||||
configSitesDataURL () {
|
||||
if (!this.setting.sitesDataURL) this.resetDefaultSitesDataURL()
|
||||
|
||||
@@ -179,7 +179,7 @@
|
||||
import { mapMutations } from 'vuex'
|
||||
import { history, star, sites, setting } from '../lib/dexie'
|
||||
import zy from '../lib/site/tools'
|
||||
import { remote } from 'electron'
|
||||
const remote = require('@electron/remote')
|
||||
import fs from 'fs'
|
||||
import Sortable from 'sortablejs'
|
||||
import Waterfall from 'vue-waterfall-plugin'
|
||||
|
||||
@@ -11,7 +11,7 @@ import SocksProxyAgent from 'socks-proxy-agent'
|
||||
// 要在设置中添加代理设置,可参考https://stackoverflow.com/questions/37393248/how-connect-to-proxy-in-electron-webview
|
||||
const http = require('http')
|
||||
const https = require('http')
|
||||
const { remote } = require('electron')
|
||||
const remote = require('@electron/remote')
|
||||
const win = remote.getCurrentWindow()
|
||||
const session = win.webContents.session
|
||||
const ElectronProxyAgent = require('electron-proxy-agent')
|
||||
|
||||
Reference in New Issue
Block a user