2016-11-14 8 views
0

私は、https://dandelion.eu/へのAPIコールを使用してエンティティ抽出を行っています。テキストファイルを送信していて、自動的にjsonファイルを返信します。このサービスを初めて使うのではなく、本当にうまくいった。今私はいつも使っていたのと同じパラメータを持つ新しいテキストファイルを送ってきましたが、私はこれを受け取ります:ValueError:アンパックする値が多すぎます。ここで が私のコードです:Python requests.request ValueError:アンパックする値が多すぎます

values={"text":" ", 
     "min_confidence":"0.6", 
     "include":"types", 
     "include":"abstract", 
     "include":"categories" 
     } 

headers = {'X-Target-URI':'https://api.dandelion.eu', 
      'Host':'api.dandelion.eu', 
      'Connection': 'keep-alive', 
      'Server': 'Apache-Coyote/1.1', 
      'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8', 
      } 

for roots, dirs, files in os.walk(spath): #spath is specified 
for file in files: 
    if file.startswith("A0"): 
     with open(file, "r") as f: 
      text = f.read() 

      values["text"]= " ".join(text.split()) 

      #api call 
      url = "https://api.dandelion.eu/datatxt/nex/v1/" 
      data = urllib.urlencode(values, "utf-8") 
      response = requests.request("POST", url, data=data, headers=headers, params=token_api) 

      content = response.json() 

      print content 

ErrorValue:

を解凍するにはあまりにも多くの値は、誰かがこの上で私を助けることができますか?私はいつも同じコードを他のAPI呼び出しに使用していました。私は今何が間違っているのか分からない。

答えて

0

APIは複数の値を返します。

APIのドキュメントを参照して、戻り値を確認してください。

(あなたはツアーの質問にERRを提起したものをAPI言及しませんでした)

+0

APIは、常に単一の応答を与えるので、それは奇妙に見えます。 sigle jsonファイル。私は他のテキストファイルのために同じpythonスクリプトを使用し、それは正しく動作します。 – CosimoCD

+0

私は問題が何かを発見しました...私のファイルのタイトルは、数字が増えていくシリーズでした。 001,002,003。なぜか分からないけど、 "0"で始まるすべてのファイルを開くためにPythonに言うと、すべてのファイルを1つずつ開きますが、同じファイルを2つ開きます。したがって、変数値["text"] = "" .join(text.split())に2つのファイルが格納され、応答を返すとアンパックすることはできません。 – CosimoCD

関連する問題