def search():
query = "xxx"
r = requests.get('website?q=' + query)
soup = BeautifulSoup(r.content, 'lxml')
results=[]
for row in soup.findAll('li', attrs = {'class':'res'}):
result = {}
result['urltext'] = row.a.text
result['url'] = row.cite.text
results.append(result)
return render_template('site.html', urll = result['url'], urltext = result['urltext'])
else:
return render_template('start.html')
При таком использовании я получаю один результат в site.html, как будто цикл останавливается и получает первый результат и передает его в site.html. И я хочу, чтобы все результаты, которые он находит, были переданы.
def search():
query = "xxx"
r = requests.get('website?q=' + query)
soup = BeautifulSoup(r.content, 'lxml')
results=[]
for row in soup.findAll('li', attrs = {'class':'res'}):
result = {}
result['urltext'] = row.a.text
result['url'] = row.cite.text
results.append(result)
print (result['url'])
Использование print дает мне все результаты. Но это бессмысленно, если я не уроню идею render_template и напечатаю весь HTML с результатом ['url'] и результатом ['urltext'] каким-то образом.