how could I get to make these three lists into one list following the same order as the output in the join? Here is my code:
from bs4 import BeautifulSoup
import requests
url = 'http://www.adorocinema.com/filmes/mais-esperados/'
r = requests.get(url)
soup = BeautifulSoup(r.content, 'html.parser')
#print(soup.prettify())
html_filme = soup.find('div', attrs={'class': 'gd-col-left'})
html_filme2 = html_filme.find_all('a', attrs={'class': 'meta-title-link'})
#print(html_series.prettify())
#print(html_series2)
filmeLista = []
for texto in html_filme2:
filme = texto.find_all(text=True)
filmeLista.append({'nome': filme[0]})
#print (serieLista)
diretoresLista = []
html_diretores = html_filme.find_all('div', attrs={'class': 'meta-body-item meta-body-direction'})
for diretor in html_diretores:
diretores = diretor.find_all(text = True)
diretoresLista.append({'diretor':diretores[3]})
#print(diretores)
#print(diretoresLista)
estreiasLista = []
html_estreia = html_filme.find_all('div' ,attrs={'class' : 'meta-body-item meta-body-info'})
for estreia in html_estreia:
estreias = estreia.find_all(text = True)
#print(estreias)
generos = []
try:
generos = estreias[7].replace("\n", "") + ','+ (estreias[7] == None and ('') or estreias[9].replace("\n", ""))
except IndexError:
generos = estreias[5]
estreiasLista.append({'Estreia':estreias[1],\
'Genero':generos})
Method Join:
filmesLista2 = "\n".join("{} , {} , {}".format(x, y, z) for x, y, z in zip(filmeLista, diretoresLista, estreiasLista))
print(filmesLista2)
entire method output enter image description here
Thank you for your help.