Utilisation de BeautifulSoup
Bonjour,
Ma question concerne l'extraction de données a partir d'un site internet.
Je souhaite simplement relever la valeur de la cryptomonnaie ETHERUM - ETH avec le site internet :
https://www.blockchain.com/prices/ETH?timeSpan=1&scale=0&style=line
Le code html est :
Je souhaite récupérer la valeur USD2,621.66.
Mon code python est :
Resultat :
Et aucune trace de la valeur que je recherche !
Merci de votre attention et de votre réponse; je suis bloqué.
Ma question concerne l'extraction de données a partir d'un site internet.
Je souhaite simplement relever la valeur de la cryptomonnaie ETHERUM - ETH avec le site internet :
https://www.blockchain.com/prices/ETH?timeSpan=1&scale=0&style=line
Le code html est :
<div width="fit-content" class="sc-1j9nxnw-0 dTjqWh"> <span color="grey900" class="sc-1ryi78w-0 jLizcp sc-1uwp5tk-0 kKnZAp" opacity="1"> <span color="grey800" class="sc-1ryi78w-0 jLizcp sc-1uwp5tk-0 r2g87f-6 fuptWv iTPDUE" opacity="1">USD2,621.66</span> </span> </div>
Je souhaite récupérer la valeur USD2,621.66.
Mon code python est :
import requests
from bs4 import BeautifulSoup
url="https://www.blockchain.com/prices/ETH?timeSpan=1&scale=0&style=line"
reponse = requests.get(url)
page = reponse.content
soup = BeautifulSoup(page, "html.parser")
etherum=soup.find_all("span", class_="sc-1ryi78w-0 jLizcp sc-1uwp5tk-0 r2g87f-6 fuptWv >>>iTPDUE")
for cours in etherum :
print(cours)
Resultat :
<span class="sc-1ryi78w-0 jLizcp sc-1uwp5tk-0 r2g87f-6 fuptWv iTPDUE" color="grey800" opacity="1"></span>
Et aucune trace de la valeur que je recherche !
Merci de votre attention et de votre réponse; je suis bloqué.
3 réponses
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
bonjour,
peux-tu poster ton code en utilisant les balises de code? https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code -
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
comment as-tu obtenu le code html que tu montres?
ce n'est pas ce que je vois dans la page:<div width="fit-content" class="sc-1j9nxnw-0 dTjqWh"> <span color="grey900" class="sc-1ryi78w-0 jLizcp sc-1uwp5tk-0 kKnZAp" opacity="1"> <span color="grey800" class="sc-1ryi78w-0 jLizcp sc-1uwp5tk-0 r2g87f-6 fuptWv iTPDUE" opacity="1"> </span> </span> </div>
-
Bonjour,
Si on modifie légèrement ton code
import requests from bs4 import BeautifulSoup url="https://www.blockchain.com/prices/ETH?timeSpan=1&scale=0&style=line" reponse = requests.get(url) page = reponse.content soup = BeautifulSoup(page, "html.parser") ethereum = soup.find_all("span") print(ethereum)
... on ne retrouvera pas le montant que tu cherches. En inspectant le site, on voir que le montant que tu veux récupérer est dans du Flex. Du coup, il faut peut être regarder un peu ce qui est indiqué cette discussion, car si ton montant n'est pas stocké danssoup
tu ne risques pas de le retrouver. Passer parselenium
te permettra peut être de tout récupérer...
Bonne chance