我正在嘗試Django中的BeautifulSoup4,我用它解析了一個XML頁面。當我嘗試以不同的方式解析python解釋器中的同一個XML頁面時,它工作正常。但在Django中,我得到如下所示的頁面。在Django中沒有得到任何輸出爲BeautifulSoup
views.py:
def rssfeed(request):
list1=[]
xmllink="https://rss.sciencedaily.com/computers_math/computer_programming.xml"
soup=BeautifulSoup(urlopen(xmllink),'xml')
for items in soup.find_all('item'):
list1.append(items.title)
context={
"list1":list1
}
return render(request,'poll/rssfeed.html',context)
rssfeed.html:
{% if list1 %}
<ul>
{% for item in list1 %}
<li>{{ item }}</li>
{% endfor %}
</ul>
{% endif %}
什麼,我做錯了什麼?
我會在那裏放一些打印語句或一個'import pdb;在那裏插入pdb.set_trace()行,彈出一個交互式解釋器,看看發生了什麼。另外,我認爲'{%if list1%}'是不必要的,因爲如果列表爲空,for循環將不會創建任何模板代碼。 – elethan
謝謝。我剛開始學習時並不知道。但是關於第二點,我想我以後可能會發表其他意見,並打印一些內容。 –
那麼當你在'list1.append(items.title)'之前添加'print(items.title)'時,或者在'return'語句之前放置了'print(list1)'時,你在終端窗口中看到了什麼?運行你的代碼我得到了一個包含在'