前提・実現したいこと
あるサイトをスクレイピングしたいのですが、要素が見つからないと出ます。
JSでレンダリング?されているのかもしれないというとこまで調べましたが、その後どうすればいいかわかりません。
chromeを使っていますが、検証ではその要素はあります。
selenium, requestsでhtmlを取得するとその部分は何も書いていません。
ページのソースを表示でも出てきていません。
発生している問題・エラーメッセージ
要素がないと出る
該当のソースコード
検証の表示では下記のように表示
html
1<div class="product-overview"> 2<div id="product-description" data-spm="1000023" class="product-description"><div class="origin-part box-sizing"> 3・ 4・ 5・ 6<script>window.adminAccountId=222402430;</script> 7</div></div> 8</div>
ソースを表示、取得したhtml
html
1<div class="product-overview"><div class="lazy-load" style="height: 400px;"></div></div>
実行したpythonコード
こちらはもちろん取得できるので何かの書き方が違うわけではないと思います。
python
1if driver.find_element_by_css_selector(".product-description"): 2 取得できた時 3else: 4 できていないとき 5 print('ないよ') 6
このクラス名ではないよと出てきます
if driver.find_element_by_css_selector(".product-overview"): 取得できた時 else: できていないとき print('ないよ')
試したこと
ユーザーエージェントを自分のものに設定したり、3つくらいのユーザーエージェントをランダムで取得したりして試したが無理でした。
補足情報(FW/ツールのバージョンなど)
mac
chrome
python 3.8.8