首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >远程控制python类

远程控制python类
EN

Stack Overflow用户
提问于 2015-02-03 11:07:15
回答 1查看 84关注 0票数 0

我做了python类来控制我的声音系统,这个类看起来是这样的:

代码语言:javascript
复制
from django.db import models
import youtube_dl, pygame, glob

class PlayerControl(object):
    def __init__(self):
        pygame.mixer.init()
    def download_music(self, video_url):
        ydl_opts = {
            'format': 'bestaudio/best',
            'postprocessors': [{
            'key': 'FFmpegExtractAudio',
            'preferredcodec': 'mp3',
            'preferredquality': '192',
            }],
            'forcefilename': True,
        }
        ydl = youtube_dl.YoutubeDL(ydl_opts);
        ydl.download(video_url)
    def get_mp3_files_list(self):
        return glob.glob("*.mp3")
    def play_music(self, fileName):
        pygame.mixer.music.load("1.mp3")
        pygame.mixer.music.play()
    def pause(self):
        pygame.mixer.music.pause()
    def replay(self):
        pygame.mixer.music.play()
    def get_volume(self):
        return pygame.mixer.music.get_volume()
    def set_volume(self, volume_to_set):
        pygame.mixer.music.set_volume(volume_to_set)

为了向前迈出一步,我想用一个比python更好的接口来远程控制这个类.

我想通过浏览器控制它是最简单的事情,我的问题是--如何使用HTTP请求从浏览器中修改python类。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-02-05 09:45:33

如果您想要在http上控制这一点,您将需要获得您所拥有的,并构建一个web访问的API。目前这方面的标准行业实践是REST,但对于您的第一次尝试,我不会被细节所困扰。

我建议你从一个微型框架开始,比如瓶子或酒瓶。好消息是,您已经编写了您想要与之交互的模型,现在您只需将其连接到某个方面。

按照MVC模式,您将需要编写一个View层,它从模型或其方法的返回值中获取信息,并以您希望使用的方式显示它。然后使用您选择的web微框架编写控制器,该框架将模型和视图绑定在一起,这样当您在给定的端点上发出http请求时,它会调用相关方法并返回相关数据。

我把这里的一切都保持在一个较高的水平,但我很乐意从评论中回答具体的问题。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28297390

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档