私は、異なるWebサイト(instantgaming、G2Aなど)のゲームの価格を自動的に比較するスクリプトを作成します。次のスクリプトは一部のサイトでは動作しますが、他のサイトでは動作しません。コードは次のようになります。WebScraping - BS4のみがタグを見つけます
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()
問題は価格変数が正しいタグ
<strong class="mp-pi-price-min"></strong>
が含まれていることである。しかし、それはブラウザによると、それは次のようになります(価格を格納していません:)
<strong class="mp-pi-price-min">10,16€</strong>
CSS-Selectorで同じコードを実行すると、同じ結果が返されます。
うまく動作します、ありがとう! – Terrakx