私はPythonを学んでおり、現在自分で設定しているプロジェクトには、ネットに接続されたラップトップからの質問の送信、MIT START NLPデータベースへの接続、質問の入力、応答の取得、および応答の表示が含まれます。docs.python.orgの「HOWTOFetchInternetResources Using urllib2」を読みましたが、このアイデアの心に訴える部分が欠けているようです。これが私のコードです:
import urllib
import urllib2
question = raw_input("What is your question? ")
url = 'http://start.csail.mit.edu/'
values = question
data = urllib.urlencode(values)
req = urllib2.Request(url, data)
response = urllib2.urlopen(req)
the_page = response.read()
print the_page
そして、これが私が得ているエラーです:
トレースバック(最後の最後の呼び出し):ファイル "mitstart.py"、9行目、データ= urllib.urlencode(values)ファイル "/usr/lib/python2.7/urllib.py"、1298行目、urlencodeはTypeErrorを発生させますTypeError:有効な非文字列シーケンスまたはマッピングオブジェクトではありません
だから私はvalesで質問を設定する方法が間違っていたと思っているので、私はしました
values = {question}
とvalues = (question)
とvalues = ('question')
喜びもなく。
(私は知っています、そして私の応答は「私は学んでいます、それは遅いです、そして私がこれを理解しようとしている間に突然私の妻は彼女が些細なことについて私に話す必要があると決めました)
ガイダンスを得ることができますか、または少なくとも正しい方向に向けることができますか?