我在RedHat的openShift平臺上使用Django,使用Django並嘗試將NLTK結果輸出到瀏覽器。 但是當我嘗試用結果做HttpResponse時,它返回null。如何從瀏覽器打印Python NLTK輸出(在Django中)
如何訪問NLTK調用並將結果輸出到瀏覽器?
我測試了一致性函數的內容,它在逐行放入Python shell時起作用。 有什麼不同? 我試過不同的東西來獲得標準輸出。
views.py:
import os
from django.shortcuts import render_to_response
from django.http import HttpResponse, HttpRequest
import json
import nltk
import nltk.data
import pickle
import subprocess
def home(request):
return HttpResponse("<h2>intro</h2>")
def concordance(request):
script = request.GET.get('script')
textPath = [path to file dir]
fullTextPath = textPath+script+'.txt'
f=open(fullTextPath)
raw=f.read()
tokens = nltk.word_tokenize(raw)
text = nltk.Text(tokens)
result = text.concordance('love')
return HttpResponse(result, "Content-Type: text/html")
從urls.py(路由似乎是工作)
urlpatterns = patterns('',
# Examples:
url(r'^$', 'openshift.views.home', name='home'),
url(r'^concordance/', 'openshift.views.concordance', name='concordance'),
我已經將範圍縮小到NLTK函數問題: 函數輸出似乎與我之前遇到的不同 - 也許它是Python的東西,或者它可能是NLTK的東西。無論哪種方式,它在輸出處理結果的這一點上都很痛苦。 – jmhead