我做编程是一种爱好。我使用java和python,我知道HTML。我写了下面的python脚本。我想把它变成一个webapp。那就是你按下一个按钮进入网页,脚本在服务器上运行它以随机顺序选择wav文件将它们拼凑在一起然后我希望wav文件的链接出现在网页上以便用户可以玩它。我还希望将解决方案显示在网页上。我已经看了瓶子和django,这有点令人生畏。它似乎是关于数据库和身份验证的所有我找不到一个类似于我在这里尝试做的事情的教程。如果您有任何指示,我将不胜感激。我该怎么看?什么是我想要做的最简单的解决方案。我应该使用什么技术? 提前感谢您的帮助。
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
答案 0 :(得分:1)
我想我知道为什么这个问题被低估了。你基本上问过如何做一个整个项目,问题不够具体。我会尽力帮忙。
打破你想要做的事情。你会发现你想要的实际上是几件事。
- 您希望您的脚本在人们可以访问的网页上运行。
你必须在某个地方举办它。所以寻找那些。一些地方会让你免费托管这样简单的东西。你需要一个Web服务器。像烧瓶这样的框架非常适合这么简单。
- 你想要一个运行脚本的按钮
你提到你知道HTML。您可以在Flask中调用您的代码。
- 您希望在页面上嵌入媒体播放器,以便用户可以播放样本。 你将不得不寻找它。应该有解决方案。也许是这样的:https://amazingaudioplayer.com/
您可能找不到您想要做的确切项目的教程,但如果您将项目分解为子问题,您会发现它们几乎总是很常见。如果你自己谷歌解决任何问题,你应该找到足够的资源。
希望它有所帮助,我不确定是否有人会因为票数减少而回答。如果您有特定问题,请再次发布!感谢。