2017-06-24 99 views
-3

我把编程当做爱好。我使用java和python,我知道HTML。我写了下面的python脚本。我想把它变成一个webapp。那就是你进入网页你按下一个按钮,脚本在服务器上运行,它以随机顺序选择wav文件将它们拼接在一起,然后我希望链接到wav文件出现在网页上,以便用户可以播放它。我也希望解决方案能够显示在网页上。我已经看过烧瓶和django,这有点令人生畏。它似乎是关于数据库和身份验证的一切,我无法找到一个教程来做类似于我在这里尝试做的事情。如果您有任何建议,我将不胜感激。我应该看什么?什么是我想要做的最简单的解决方案。我应该使用什么技术? 非常感谢您的帮助。将python脚本变成webapp最简单的方法是什么?

import wave 
import random 


def concatenate_multiple_files(infiles): 
while len(infiles) >= 2: 
    raw_files = infiles[0:2] 
    outfile = "sound_to_play_in_browser.wav" 
    data = [] 
    for infile in infiles: 
     w = wave.open(infile, 'rb') 
     data.append([w.getparams(), w.readframes(w.getnframes())]) 
     w.close() 
    output = wave.open(outfile, 'wb') 
    output.setparams(data[0][0]) 
    output.writeframes(data[0][1]) 
    output.writeframes(data[1][1]) 
    output.close() 
    infiles.pop(0) 
    infiles.pop(0) 
    infiles.insert(0, outfile) 


def create_random_list_plus_solution(list_to_choose_from): 
    random_list = [] 
    solutions = [] 
    while len(random_list) < 5: 
     random_number = random.randrange(0, 5) 
    if list_to_choose_from[random_number][0] not in random_list: 
     random_list.append(list_to_choose_from[random_number][0]) 
     solutions.append(list_to_choose_from[random_number][1]) 
return [random_list, solutions] 


infiles_plus_solutions = infiles = [["sound1.wav", "wolf"], 
           ["sound2.wav", "snake"], 
           ["sound3.wav", "bird"], 
           ["sound4.wav", "lion"], 
           ["sound5.wav", "cougar"], 
           ["sound6.wav", "cat"] 
           ] 

outfile = "sound_to_play_in_browser.wav" 

random_list_solutions = 
create_random_list_plus_solution(infiles_plus_solutions) 
concatenate_multiple_files(random_list_solutions[0]) 
for i in random_list_solutions[1]: 
    print(i)h 

回答

1

我想我知道为什么这个问题是downvoted。你基本上问过如何完成整个项目,这个问题还不够具体。我会尽力帮助。

打破你想做的事情。你会发现你想要的东西其实有好几件事。

- 您希望脚本在人们可以访问的网页上运行。

你将不得不承担它的地方。所以寻找那些。有几个地方可以让你免费提供这样简单的东西。你需要一个网络服务器。像烧瓶这样的框架对于这样简单的事情来说非常有用。

- 您希望它运行一个脚本

你提到你知道HTML按钮。你可以在Flask中调用你的代码。

- 您希望在页面上嵌入媒体播放器,以便用户可以播放样本。 你将不得不寻找那个。应该已经有解决方案了。也许像这样:https://amazingaudioplayer.com/

你可能找不到你想要做的确切项目的教程,但是如果你把你的项目分解成子问题,你会发现它们几乎总是很常见。如果你自己面对任何问题,你应该找到大量的资源。

希望它有一点帮助,我不确定是否有人会因为倒票而回答。如果您确实有特定的问题,请再次发布!谢谢。

+0

确实和礼貌的答案。感谢您花时间。 – Melvyn

+0

不是问题:) – Vib

相关问题