前提・実現したいこと
JavaScriptで自動スクロールしてWebサイトのデータを取得することが最終目的です。先ず簡単なコードで動作確認をしています。
発生している問題・エラーメッセージ
下のJavaScriptコードを実行しましたが、対象の要素はスクロールされませんでした。調べてみると、clientHeightは期待通りの値を返しているのですが、scrollTopはclientHeightの値を代入しているのにも関わらず変わらず0を返してきます。
何度か違う値を代入してみてましたが、やはり0のままでした。scrollTopに値を代入することによって要素がスクロールされると認識しているのですが、間違っているのでしょうか?
因みに、同じ問題を経験された方々がCSSのheightの設定に不具合があるケースを指摘して下さっているようです。しかし、該当要素のCSSを確認しても問題を見つけることができませんでした。(尚、Webサイトそのものを作っているわけではなく、データを抽出することが目的です)
該当のソースコード1
test = """
var $playerBox = document.querySelector('div.webix_ss_body')
$playerBox.scrollTop = $playerBox.clientHeight
console.log($playerBox.clientHeight)
console.log($playerBox.scrollTop)
"""
driver.execute_script(test)
*Pythonで実行するので、JavaScriptコードをtest変数に一旦代入しています。
該当のソースコード2
該当箇所のCSSは
.webix_ss_body {
overflow: hidden;
position: relative;
}
となっています。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/16 05:04