2017-11-13 11 views
0

以下のコードは、すべての.movファイルをダウンロードしてローカルディレクトリに配置するdownload_clips関数を取得する方法を理解する必要があるという点を除いて、うまく動作します。問題を引き渡す引数

import urllib, sys, string, os, time 

def is_download_allowed(): 
    f = urllib.urlopen("http://10.1.1.27/config?action=get&paramid=eParamID_MediaState") 
    response = f.read() 
    if (response.find('"value":"1"') > -1): 
     return True 
    f = urllib.urlopen("http://10.1.1.27/config?action=set&paramid=eParamID_MediaState&value=1") 

def download_clip(clip): 
    url = "http://10.1.1.27/media/" + clip 
    print url 
    #os.system("curl --output " + clip + " " + url); 

def download_clips(): 
    i = 0 
    response = "" 
    values = response.split(":") 
    for word in values: 
     i += 1 
     if(word.find('clipname') > -1): 
      clip = values[i].split(',')[0].translate(string.maketrans("",""), '[]{} \,\"\" ') 
      if not os.path.exists(clip): 
       print "Downloading clip: " + clip 
     else: 
      f = urllib.urlopen("http://10.1.1.27/config?action=set&paramid=eParamID_MediaState&value=0") 
      print "No new clips found" 

def is_download_not_allowed(): 
    f = urllib.urlopen("http://10.1.1.27/config?action=get&paramid=eParamID_MediaState") 
    response = f.read() 
    if (response.find('"value":"-1"') > 1): 
     return True 
    f = urllib.urlopen("http://10.1.1.27/config?action=set&paramid=eParamID_MediaState&value=0") 

is_download_allowed() 
download_clip('C1ATK26') 
download_clips() 
is_download_not_allowed() 
+3

この関数はどのように呼び出されますか?コードの一部を見せてください。 – Arman

+1

あなたはどのようにその機能を呼び出していますか? –

+0

問題はあなたが投稿しなかったコードの一部です。本当に助けが必要な場合は、MCVEを投稿してください。 –

答えて

-1

download_clips()は、未定義の応答引数を使用して呼び出しています。

I.e.あなたのコードのどこかにdownload_clips(response)がありますが、以前はあなたのコードにresponse = somethingを書いていなかったので、あなたのコードは失敗します。

response = "" 
download_clips(response) 

となります。しかし、おそらく、他のロジックに基づいて応答を割り当てたいと思うかもしれません。私たちがあなたを助けるためにコード全体を投稿する必要があります。

+0

これは、この回答をランク付けするのに十分な理由ではありませんIMHOはOP質問に答える。 – alexisdevarennes

+0

詳細はOPとは関係ありません。 – alexisdevarennes

+0

あいまいな質問の詳細についてはOPにお尋ねください。不完全な回答は書かないでください。 – Arman