Aide sur mon programme python pour récupérer des info météo

Fermé
jesuispasunprodutout - 27 janv. 2022 à 18:42
yg_be Messages postés 23412 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 décembre 2024 - 27 janv. 2022 à 21:41
Bonjour,
Je ne comprend pas pourquoi mon programme marche Pas pouvez vous m'aidez ?

import requests
from bs4 import BeautifulSoup

city = "Rouen"

url = "https://www.google.com/search?q="+"weather"+city
html = requests.get(url).content

soup = BeautifulSoup(html, 'html.parser')
temp = soup.find('div', attrs={'class': 'BNeawe iBp4i AP7Wnd'}).bs4
str = soup.find('div', attrs={'class': 'BNeawe tAd8D AP7Wnd'}).bs4

data = str.split('\n')
time = data[0]
sky = data[1]

listdiv = soup.findAll('div', attrs={'class': 'BNeawe s3v9rd AP7Wnd'})
strd = listdiv[5].text

pos = strd.find('Wind')
other_data = strd[pos:]

print("Temperature is", temp)
print("Time: ", time)
print("Sky Description: ", sky)
print(other_data)
A voir également:

1 réponse

yg_be Messages postés 23412 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 décembre 2024 Ambassadeur 1 557
27 janv. 2022 à 21:41
bonjour,
deux choses à faire, avant tout:
1) utiliser les balises de code quand tu partages ici du code: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
2) expliquer le comportement de ton code. "marche pas", cela ne veut rien dire.

si ton soucis est sur la ligne
temp = soup.find('div', attrs={'class': 'BNeawe iBp4i AP7Wnd'}).bs4
alors tu pourrais la modifier pour mieux comprendre:
ty=soup.find('div', attrs={'class': 'BNeawe iBp4i AP7Wnd'})
print (type(ty),ty)
temp = ty.bs4
0