0

こんにちは皆さん、コードを 1 行実行するための簡単な GUI を作成しました。これまでは、cmd 経由でコマンドを実行していました。

youtube-dl.py http://www.youtube.com/ --extract-audio --audio-format mp3

今、私は自分のGUIでこのコマンドを実行したい.

私のGUIはこれです:

#!/usr/bin/python


import wx


APP_SIZE_X = 300
APP_SIZE_Y = 200

class MyButtons(wx.Dialog):
    def __init__(self, parent, id, title):
        wx.Dialog.__init__(self, parent, id, title, size=(APP_SIZE_X, APP_SIZE_Y))

        wx.Button(self, 1, 'Close', (50, 130))
        wx.Button(self, 2, 'Run', (150, 130), (110, -1))

        self.Bind(wx.EVT_BUTTON, self.OnClose, id=1)
        self.Bind(wx.EVT_BUTTON, self.OnRun, id=2)

        self.Centre()
        self.ShowModal()
        self.Destroy()

    def OnClose(self, event):
        self.Close(True)

    def OnRun(self,event):
        print "ok for now"


app = wx.App(0)
MyButtons(None, -1, 'buttons.py')
app.MainLoop()

助けが必要です、助けてくれてありがとう...

4

1 に答える 1

1

サブプロセスをインポートして、スクリプトをそのように呼び出すことができます。このようなもの:

def OnRun(self,event):
    path = "/path/to/youtube-dl.py"
    url = "http://www.youtube.com/"
    subprocess.Popen(path, url, "--extract-audio", "--audio-format", "mp3")

詳細については、ドキュメントを参照してください: http://docs.python.org/2/library/subprocess.html

于 2013-09-17T21:48:47.170 に答える