我想編寫一個CGI腳本,它將表單數據,發送到搜索引擎,搜索,然後在網頁上顯示我的CGI腳本它的結果跑。我一直在嘗試使用urllib和urllib2。Python中的CGI腳本來搜索數據庫並打印結果
在我的腳本:hello.py
if form.has_key("data_search"):
datasearch = form["data_search"].value
url = 'http://www.example.com/'
data = urlparse.urlparse(datasearch)
data2 = urllib.urlencode(data)
req = urllib2.Request(url, data2)
response = urllib2.urlopen(url, data2)
the_page = response.read()
print response
response.close()
所以我想借用戶輸入(datasearch),它在不同的網址(www.example.com)發送到搜索引擎,以及在我的網頁上打印搜索結果(www.server.com/cgi-bin/hello.py)。
此當前腳本不起作用。我不確定我是否犯了某種語法錯誤,或者是否需要完全使用新的方法。
第一個錯誤是在
DATA2 = urllib.urlencode(數據)
內建類型錯誤= 類型錯誤:不是一個有效非字符串序列或映射對象 ARGS =('不是一個有效的非('','','TTBar','','',''),而TTBar是我的查詢的結果。
我不明白,是什麼問題? – MatthewWilkes
現在我編輯的問題更清楚了嗎? – Katie
事情出錯了?請打印您收到的任何堆棧跟蹤(如果您剛剛獲得HTTP 500錯誤,請通過並添加一些打印語句來查看您獲得了多少/某些值)。 –