gpt4 book ai didi

python - 用django控制python程序

转载 作者:行者123 更新时间:2023-12-03 00:49:29 25 4
gpt4 key购买 nike

嘿嘿,
我用python写了一个像winamp这样的小音乐播放器。它有一个 GUI(歌曲名、播放/暂停、下一个、上一个、时间进度条),我可以打开一个文件夹,然后一个接一个地播放音频文件。

现在我真的很喜欢通过托管在同一台机器上的网络服务器添加远程控制。我的想法是在网页上的 GUI 中拥有相同的按钮和输出(也是时间进度条)。

场景:我在我的电脑上启动我的音乐播放器(它也会自动启动一个网络服务器),我选择我的包含歌曲的文件夹并通过单击桌面上的 GUI 跳过两首歌曲。现在我决定坐在沙发上看书。过了一会儿,音乐让我很烦,我想暂停一下。我拿起手机,访问网页并点击暂停按钮。音乐停止,桌面 GUI 也使用react(停止时间进度条并显示播放按钮而不是暂停按钮)。

我知道如何创建一个 django 服务器以及如何运行它,但我不知道如何让 django View 与我桌面上的音乐播放器进行通信。

我已经用谷歌搜索并阅读了一些东西,但我不知道该走哪条路:

  • 信号:不知道这是否有意义,因为这两个进程完全分离
  • 通过数据库进行通信,将音乐播放器的状态保存在数据库行中,并让两个进程在按下按钮时更新条目:不喜欢这个想法,因为我希望两个进程在没有解释器的情况下进行通信
  • 也许使用 UDP/TCP:但是为什么,进程在同一台机器上

  • 如果我现在必须对其进行编程,我会选择数据库方法,或者还有其他我还没有发现的解决方案吗?我应该使用 flask 而不是 django 吗?

    如果这是一个常见的问题和任务,我很抱歉重复一遍,但我找不到任何说明如何解决这个问题的东西。

    最佳答案

    您正在寻找的是 IPC(进程间通信)。我的直觉是让音乐播放器打开一个套接字,绑定(bind)到一个端口,然后监听命令。

    然后在 Django View 中打开一个到播放器的套接字连接,发送命令并向浏览器返回响应。

    如果您想要与浏览器进行完全双向通信,那么您还需要有一个进程等待音乐播放器的输出并通过 Web 套接字连接将其发送回浏览器。 standard socket tutorial is very handy .

    关于python - 用django控制python程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23030582/

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