首页 > 解决方案 > 我想从 php 运行一个 python 文件。python文件包含很多包(如torch、models等)

问题描述

我想从 PHP 运行一个 python 文件。python文件包含很多包(如torch、models等)。我可以使用命令行轻松运行它,但是在使用 shell_exec 从 PHP 调用它时它不会运行。

php 文件看起来有点像这样:

$output = exec ('cd /home/prabhakar/Hackathon/Text_Speech/ ; conda activate neural_tts ; python quick_start.py -u --input_text "Hi?" ');
    echo $output."<br>";<br>

python文件是:

    import torch
    from models.fatchord_version import WaveRNN
    from utils import hparams as hp
    from utils.text.symbols import symbols
    from models.tacotron import Tacotron
    import argparse
    from utils.text import text_to_sequence
    from utils.display import save_attention, simple_table
    import zipfile, os


    os.makedirs('quick_start/tts_weights/', exist_ok=True)
    os.makedirs('quick_start/voc_weights/', exist_ok=True)

    zip_ref = 
    zipfile.ZipFile('pretrained/ljspeech.wavernn.mol.800k.zip', 'r')
    zip_ref.extractall('quick_start/voc_weights/')
    zip_ref.close()

    zip_ref = 
    zipfile.ZipFile('pretrained/ljspeech.tacotron.r2.180k.zip', 'r')
    zip_ref.extractall('quick_start/tts_weights/')
    zip_ref.close()


    if __name__ == "__main__":
        print("Hello World!!")
        exit()

标签: pythonphpapache2shell-exec

解决方案


您可能正在使用虚拟环境。尝试先通过 PHP 激活虚拟环境,然后运行 ​​python 代码。


推荐阅读