Ich arbeite an einem Skript, das automatisch Preise für Spiele auf verschiedenen Websites vergleicht (Instantgaming, G2A, etc.). Das folgende Skript funktioniert für einige Websites, für andere jedoch nicht. Code sieht wie folgt aus:WebScraping - BS4 findet nur Tags
import bs4
import requests
res1 = requests.get('https://www.g2a.com/?search=dead%20by%20daylight')
res1.raise_for_status()
soup = bs4.BeautifulSoup(res1.text,'html.parser')
elems = soup.find('div', {'id': 'content-landing'})
children = elems.find('div', {'class': 'mp-product-info'})
price = children.find('strong', {'class': 'mp-pi-price-min'})
price.text.strip()
Das Problem ist, dass die Preisvariable den richtigen Tag
<strong class="mp-pi-price-min"></strong>
enthält aber nicht den Preis nicht speichert (Nach dem Browser, es ist wie dieses :) aussehen sollte
<strong class="mp-pi-price-min">10,16€</strong>
Wenn Sie denselben Code stattdessen mit einem CSS-Selector verwenden, wird das gleiche Ergebnis zurückgegeben.
Funktioniert gut, danke! – Terrakx