qiushang 4 kuukautta sitten
vanhempi
commit
7a2d248a37

+ 1 - 1
nsis/skin/uninstallpage.xml

@@ -3,7 +3,7 @@
    <VerticalLayout >
     <VerticalLayout width="570" height="314" bkimage="file='uninstall_bg1.png'">
 		<Control height="40" />
-		<WebBrowser height="264" width="550"  padding="10,0,0,0" name="oneclick_browser" homepage="https://xy.xingyousoft.com/soft/XYCapture/uninstallWeb/" autonavi="true"/>
+		<WebBrowser height="264" width="550"  padding="10,0,0,0" name="oneclick_browser" homepage="https://xy.xingyousoft.com/soft/XYCaptureVideo/uninstallWeb/" autonavi="true"/>
 	</VerticalLayout>
 	
 	<VerticalLayout bkimage="file='bgbottom.png' corner='10,0,10,10'" >

+ 9 - 9
nsis/test.nsi

@@ -1,16 +1,16 @@
 # ====================== 自定义宏 产品信息==============================
-!define PRODUCT_MID        		    "Ds8JqlRmiiGR"
-!define PRODUCT_VERSION        		"2.1.1.0"
-!define PRODUCT_NAME           		"星优图片下载助手"
-!define INSTALL_OUTPUT_NAME    		"XYCapture_XY.exe" 
-!define EXE_NAME               		"XYCapture.exe"
-!define PRODUCT_PATHNAME           	"XYCapture"     #安装卸载项用到的KEY,注册表
-!define INSTALL_APPEND_PATH         "XYCapture"     #安装路径追加的名称 
-!define APP_DOWNLOAD_URL    		"https://xy.xingyousoft.com/soft/XYCapture/lastest2.1.1.0.7z"
+!define PRODUCT_MID        		    "EkoFCqqaUJXy"
+!define PRODUCT_VERSION        		"2.0.1.0"
+!define PRODUCT_NAME           		"星优视频下载助手"
+!define INSTALL_OUTPUT_NAME    		"XYCaptureVideo_XY.exe" 
+!define EXE_NAME               		"XYCaptureVideo.exe"
+!define PRODUCT_PATHNAME           	"XYCaptureVideo"     #安装卸载项用到的KEY,注册表
+!define INSTALL_APPEND_PATH         "XYCaptureVideo"     #安装路径追加的名称 
+!define APP_DOWNLOAD_URL    		"https://xy.xingyousoft.com/soft/XYCaptureVideo/lastest2.0.1.0.7z"
 !define PRODUCT_PUBLISHER      	    "苏州星优办公软件有限公司"
 !define PRODUCT_LEGAL          	    "苏州星优办公软件有限公司"
 !define STATISTICS_url              "https://www.xingyousoft.com/api/index/user_log"   # 统计网址
-!define UNINSTALL_url               "https://xy.xingyousoft.com/soft/XYCapture/uninstallWeb/?v=2.1.1.0"   # 接卸优惠网址
+!define UNINSTALL_url               "https://xy.xingyousoft.com/soft/XYCaptureVideo/uninstallWeb/?v=2.0.1.0"   # 接卸优惠网址
 
 # ====================== 自定义宏 安装信息==============================
 !define INSTALL_7Z_NAME 	   		"app.7z"

+ 3 - 3
package.json

@@ -1,6 +1,6 @@
 {
 	"name": "XYCaptureVideo",
-	"version": "2.2.1.0",
+	"version": "2.0.1.0",
 	"author": "苏州星优办公软件有限公司",
 	"description": "An electron-vue project",
 	"license": "captureVideo",
@@ -11,8 +11,8 @@
 		"softMid": "EkoFCqqaUJXy",
 		"softName": "星优视频下载助手",
 		"copyright": "苏州星优办公软件有限公司",
-		"popupAdvId": "30",
-		"linkId": "31",
+		"popupAdvId": "44",
+		"linkId": "46",
 		"upgradeLog": "1、修复了部分BUG</br>",
 		"downloadPrefix": "https://xy.xingyousoft.com/soft",
 		"statisticsUrl": "https://www.xingyousoft.com/api/index/user_log"

BIN
src/renderer/assets/image/56.png


BIN
src/renderer/assets/image/acfun.png


BIN
src/renderer/assets/image/bilibili.png


BIN
src/renderer/assets/image/cctv.png


BIN
src/renderer/assets/image/douyin.png


+ 0 - 0
src/renderer/assets/image/m-kuaishou.png → src/renderer/assets/image/kuaishou.png


BIN
src/renderer/assets/image/m-chrome.png


BIN
src/renderer/assets/image/m-douyin.png


+ 0 - 0
src/renderer/assets/image/m-weibo.png → src/renderer/assets/image/weibo.png


BIN
src/renderer/assets/image/xiaohongshu.png


+ 0 - 0
src/renderer/components/home - 副本.vue → src/renderer/components/home-s.vue


+ 76 - 49
src/renderer/components/home.vue

@@ -7,28 +7,42 @@
 							
 			<el-main ref="el-main" style="background-color: #fafafa;">
 				<template>
-					<div style="padding: 20px 20px 0 20px; height: 100%;">
-						<el-row type="flex" justify="space-between">
-							<div>
-								<h3 style="display: inline-block;">
-									视频下载
-								</h3>
-								<!-- <el-popover placement="bottom" popper-class="popper-open" trigger="hover" content="下载类型至少选一个,评论图默认只下载商品首页展示的评论内容">
-									<i class="el-icon-info" slot="reference" style="margin-right: 10px; color: #F56C6C;"></i>
-								</el-popover> -->
-								<el-link :underline="false" type="danger" style="text-align: center; font-size: 12px;">
-									不支持win7及以下系统
-								</el-link>
-								
+					<div style="padding: 10px 20px 0 20px; height: 100%;">
+							<div style="text-align: center;">
+								<p class="c-titles">星优-在线视频下载助手</p>
+								<div style="padding-top: 8px; font-weight: 600;">
+									支持
+									<img src="../assets/image/douyin.png" class="soft-icon" title="抖音" />
+									<img src="../assets/image/weibo.png" class="soft-icon" title="微博" />
+									<img src="../assets/image/kuaishou.png" class="soft-icon" title="快手" />
+									<img src="../assets/image/xiaohongshu.png" class="soft-icon" title="小红书" />
+									<img src="../assets/image/bilibili.png" class="soft-icon" title="b站" />
+									<img src="../assets/image/cctv.png" class="soft-icon" title="cctv" />
+									<img src="../assets/image/56.png" class="soft-icon" title="56视频" />
+									<img src="../assets/image/acfun.png" class="soft-icon" title="acfun" />
+									等多个平台,<span style="color: #F56C6C;">(建议使用win7以上系统)</span>
+									
+									<el-popover placement="bottom" popper-class="popper-open" trigger="hover" content="会员/付费/版权视频不支持下载">
+										<i class="el-icon-info" slot="reference" style="margin-right: 10px; color: #F56C6C;"></i>
+									</el-popover>
+								</div>
 							</div>
-						</el-row>
 						
 						<div style="margin-top: 20px;">
-							<el-input type="textarea" :rows="8" placeholder="请输入需要解析的视频地址" v-model="formatUrl"></el-input>
+							<el-input type="textarea" :rows="5" placeholder="请输入需要解析的视频地址" v-model="formatUrl"></el-input>
 							
-							<div class="content-top" style="padding: 10px 0;">
+							<div class="content-top" style="padding: 10px 0; text-align: center; display: inherit;">
+								<el-button type="danger" @click="startParsing()" :loading="parseLoading">开始解析</el-button>
+							</div>
+						</div>
+						
+					
+						<div class="table-scroll" style="height: calc(100% - 290px); overflow: hidden;">
+							<el-row type="flex" justify="space-between">
 								<div>
-									<el-button type="danger" @click="startParsing()" :loading="parseLoading">点击解析</el-button>
+									<h4 style="display: inline-block;">
+										视频信息:
+									</h4>
 								</div>
 								<el-row type="flex" style="align-items: center;">
 									<div class="set-item">
@@ -39,22 +53,6 @@
 										</el-popover>
 									</div>
 								</el-row>
-							</div>
-							
-						</div>
-						
-					
-						<div class="table-scroll" style="height: calc(100% - 330px); overflow: hidden;">
-							<el-row type="flex" justify="space-between">
-								<div>
-									<h4 style="display: inline-block;">
-										视频信息:
-									</h4>
-									<el-link :underline="false" style="font-size: 12px;">
-										
-									</el-link>
-									
-								</div>
 							</el-row>
 							<vxe-table ref="xTable" show-overflow class="img-table" max-height="100%" empty-text="没有更多数据了!" :loading="tabLoading" :row-config="{isHover: true}" 
 								:loading-config="{icon: 'vxe-icon-indicator roll', text: '加载中...'}" :data="videoList" :scroll-y="{enabled: true}">
@@ -68,7 +66,8 @@
 								<vxe-column field="fps" title="帧率" width="60"></vxe-column>
 								<vxe-column field="filesize" title="大小" width="90">
 									<template #default="{ row }">
-										{{$utils.handleSize(row.filesize)}}
+										<span v-if="row.filesize">{{$utils.handleSize(row.filesize)}}</span>
+										<span v-else-if="row.filesize_approx">{{$utils.handleSize(row.filesize_approx)}}</span>
 									</template>
 								</vxe-column>
 								<vxe-column field="vcodec" title="视频编码" width="120"></vxe-column>
@@ -178,7 +177,6 @@
 				finishModel: false,
 
 				loading: false,
-				
 				/** 浏览器名称 **/
 				videoBrowser: null,
 				loginBrowser: null, // 登录用的浏览器实例
@@ -284,6 +282,8 @@
 					}
 					await this.downloadImage(url, outputPath, item);
 					item.loading = false;
+					this.$message({message: '恭喜你,下载已完成!', type: 'success'});
+					electronApi.call('showItemInfolder',[this.downloadDir + separator + pjson.softInfo.softName +'\\tty.tty']);
 					return false;
 				}else{
 					let params = [
@@ -295,6 +295,8 @@
 						this.formatUrl
 					];
 					item.status = '2';
+					item.loading = true;
+					this.$forceUpdate();
 					electronApi.spawnExec(['dlp.exe', ...params],{
 						stdout:(data) =>{
 							let str = data.toString();
@@ -302,12 +304,13 @@
 							const res = regexDuration.exec(str);
 							if(res && res[1]){
 								item.percent = res[1];
+								this.$forceUpdate();
 							}
-							console.log('stdout', item.percent, '----', data.toString());
 						}
 					}).then(res => {
 						let outData = res.stdout ? res.stdout.toString() : '{}';
 						item.status = '3';
+						item.loading = false;
 						if(Number(this.usageTimes) >= 1){
 							let data = Number(this.usageTimes) - 1;
 							this.usageTimes -= 1;
@@ -318,11 +321,11 @@
 						}else{
 							return false;
 						}
-						
-						console.log(this.videoList)
-						console.log(outData);
+						this.$message({message: '恭喜你,下载已完成!', type: 'success'});
+						electronApi.call('showItemInfolder',[this.downloadDir + separator + pjson.softInfo.softName +'\\tty.tty']);
 					}).catch(err =>{
 						item.status = '4';
+						item.loading = false;
 						console.log(err);
 					})
 				}
@@ -346,13 +349,6 @@
 						this.douyinParsing(formatUrl);
 						return false;
 					}
-
-					// const regex2 = /https:\/\/.*?.kuaishou.com/;
-					// const res2 = regex2.exec(formatUrl);
-					// if(res2 && res2.length > 0){ //其他视频解析,使用puputter
-					// 	this.videoParsing(formatUrl);
-					// 	return false;
-					// }
 					
 					this.parseLoading = true;
 					this.tabLoading = true;
@@ -375,7 +371,7 @@
 					}).catch(err =>{
 						this.parseLoading = false;
 						this.tabLoading = false;
-						console.log('err1',err.stderr.toString());
+						// console.log('err1',err.stderr.toString());
 						let errStr = err.stderr.toString();
 						if(errStr.indexOf('Unsupported URL') > -1){
 							this.videoParsing(formatUrl);
@@ -634,7 +630,7 @@
 				setTimeout(()=> {
 					this.parseLoading = false;
 					this.tabLoading = false;
-				}, 20000)
+				}, 30000)
 				
 				let userDataDir = os.tmpdir() + separator + 'chrome-data-capture-video';
 				// 运行不同平台的浏览器
@@ -673,7 +669,7 @@
 										
 										let vinfo = {
 											title: title,
-											tag: 'kuaishou',
+											tag: 'other',
 											format_id: 'default',
 											ext: 'mp4',
 											resolution: '-',
@@ -755,6 +751,8 @@
 										});
 									}
 									await page.close();
+									this.parseLoading = false;
+									this.tabLoading = false;
 								}
 							}, 600);
 							
@@ -1254,4 +1252,33 @@
 		}
 	}
 	
+	.c-titles{
+		background: -webkit-linear-gradient(left, #FF993F, #FFCE7C 25%, #FF9682 50%, #8e430d 75%, #FF993F);
+		color: transparent;
+		-webkit-background-clip: text;
+		background-size: 200% 100%;
+		animation: mask-ani 6s infinite linear;
+		font-size: 30px;
+		font-weight: 600;
+		line-height: 1.5;
+	}
+	
+	@-webkit-keyframes mask-ani {
+	    0% {
+	        background-position: 0 0;
+	    }
+	
+	    50% {
+	        background-position: 100% 0;
+	    }
+	
+	    100% {
+	        background-position: 200% 0;
+	    }
+	}
+	
+	.soft-icon{
+		margin: 0 3px;
+	}
+	
 </style>

+ 1 - 13
src/renderer/components/update.vue

@@ -59,7 +59,7 @@
 				<p class="mian-title">2、使用风险与后果:</p>
 				<p>用户需自行承担因使用本软件而产生的所有风险和后果,包括但不限于下载失败、数据丢失、网站账号被封禁等。本软件不对任何因使用本软件而导致的直接或间接损失负责。<p>
 				<p class="mian-title">3、合理使用与道德约束:</p>
-				<p>用户从自己的网店或网址中提取图片、视频,不得用于任何违法、不道德或侵犯他人权益的目的。在使用过程中,应控制访问频率,避免对目标网站服务器造成过大负荷,影响网站正常运营,请用户自觉遵守他人的知识产权,不要使用未经授权的图片、商标等。</p>
+				<p>用户从自己的个人中心或网址中提取视频,不得用于任何违法、不道德或侵犯他人权益的目的。在使用过程中,应控制访问频率,避免对目标网站服务器造成过大负荷,影响网站正常运营,请用户自觉遵守他人的知识产权,不要使用未经授权的图片、商标等。</p>
 				<p class="mian-title">4、免责条款:</p>
 				<p>在任何情况下,本软件开发商均不对因使用本软件而产生的任何损失承担责任,包括但不限于直接经济损失、商誉损失、数据丢失等。</p>
 			</div>
@@ -83,18 +83,6 @@
 				<el-collapse-item title="4、淘宝/天猫下载任务提示成功但下载文件夹内容为空或者下载任务显示处理中仍没反应" name="4">
 					<div>长时间访问淘宝/天猫平台,可能触发了平台的人机验证,可以通过软件设置->账号登录->打开网页后跳转到首页,随机打开一个商品详情页手动解除一下验证,然后清理缓存重新下载或者换个账号登录重新下载即可</div>
 				</el-collapse-item>
-				<el-collapse-item title="5、下载的评论图片数量少" name="5">
-					<div>默认只下载商品首屏展示的评论图片,不下载后续更多页的评论图。</div>
-				</el-collapse-item>
-				<el-collapse-item title="6、报错:权限受限,请以管理员权限运行软件" name="6">
-					<div>软件权限受系统限制无法运行,需要退出软件,鼠标右击软件图标以管理员权限运行一下。</div>
-				</el-collapse-item>
-				<el-collapse-item title="7、小红书实况(Live)图下载的不全" name="7">
-					<div>实况(Live)图下载的格式为mp4,点击软件右上角菜单按钮,选择软件设置-浏览器版本-最新版本</div>
-				</el-collapse-item>
-				<el-collapse-item title="8、浏览器版本如何选择和使用?" name="8">
-					<div>点击软件右上角菜单按钮,选择软件设置-浏览器版本,兼容版本适合win10以下系统使用,win10及以上建议使用最新版本,小红书下载仅支持win10及以上系统且浏览器为最新版本。</div>
-				</el-collapse-item>
 				<el-collapse-item v-for="(item, index) in questionArr" :key="index" :title="item.q" :name="item.no">
 					<div>{{item.a}}</div>
 				</el-collapse-item>