gpt4 book ai didi

python - 将参数通过 .bat 文件传递​​给 .exe 文件,由 'PyInstaller' 转换

转载 作者:行者123 更新时间:2023-12-04 23:23:30 25 4
gpt4 key购买 nike

通过 .bat 文件向 PyInstaller 转换的 .exe 文件传递​​参数时出现错误
在我的 python 脚本中,我导入了以下库:

import time
from contextlib import closing
from PIL import Image
import subprocess
from audiotsm import phasevocoder
from audiotsm.io.wav import WavReader, WavWriter
from scipy.io import wavfile
import numpy as np
import re
import math
from shutil import copyfile, rmtree
import os
import argparse
from pytube import YouTube
import cv2
from datetime import datetime
import datetime
import os.path
import shutil
import webbrowser

这是我的 .bat 文件内容:
mode con: cols=100 lines=40
@echo off
COLOR 0A
title VideoCuts
:LOOP
if "%~1"=="" goto :END
ShortCut.exe --input_file "%~1" --silent_threshold 0.1 --silent_speed 9999999.00 --frame_margin 5 --sample_rate 48000 --frame_quality 1 --output_file "%~n1_%date:~-10,2%%date:~-7,2%%date:~-4,4%_%time:~0,2%%time:~3,2%%time:~6,2%_videocuts.mp4"
pause

我还使用这个 .bat 文件进行了测试:
ShortCut.exe --input_file="%~1" --silent_threshold=0.1 --silent_speed=9999999.00 --frame_margin=5 --sample_rate=48000 --frame_quality=1 --output_file="videocuts.mp4"

this is my error message images during processing

最佳答案

创建 minimal reproducible example 时更容易回答问题的问题。

在 bat 脚本中执行命令的回显。例如,在你的 bat 文件中,在执行 ShortCut.exe 之前再写一行。
echo "ShortCut.exe --input_file="%~1" --silent_threshold=0.1 --silent_speed=9999999.00 --frame_margin=5 --sample_rate=48000 --frame_quality=1 --output_file="videocuts.mp4""
如果使用正确的参数调用可执行文件,这将为您提供信息。
根据您在 py 文件中的实现方式,可能会出现查找此输入文件和 echo 的问题。在运行命令之前执行它可能是解决它的完美方法。

作为pyinstaller文档提到,您还可以编写可执行文件何时卡住(Exe 形式)以及何时从 IDE 运行的条件

import sys
if getattr( sys, 'frozen', False ) :
# running in a exe form
else :
# running on your IDE (eg. Pycharm)

关于python - 将参数通过 .bat 文件传递​​给 .exe 文件,由 'PyInstaller' 转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59008259/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com