-1
更新: if语句没有被执行,这是奇怪的,因为我测试了Django之外的脚本,只在Python中工作。它被赋值之前的变量
我知道这个问题在这里已经被问了很多次了,但是我找不到一个答案能帮我弄清楚我的错误。以下是错误我得到:
local variable 'what_i_need' referenced before assignment
这是我在视图中的代码:
from django.http import HttpResponse
from django.shortcuts import render
from urllib2 import urlopen
from bs4 import BeautifulSoup
def test(request):
someURL = "https://www.example.com/"
urlOpen = urlopen(someURL).read()
soup = BeautifulSoup(urlOpen)
for x in soup.findAll('span'):
if 'something' in str(x):
info = x.get_text()
info = info.split()
info = info[0]
info = info.replace(".", '')
what_i_need = info
return HttpResponse(what_i_need)
我在做什么错?
您说得对。 if语句没有执行 - 这很奇怪 - 因为当我在Django中不测试脚本时,它会起作用。有任何想法吗? – user2270029
这取决于'soup.findAll('span')'返回的结果。 –
尝试将'soup.findAll('span')'的结果打印为单独的Django页面?并弄清楚。 –