0

我试图让程序滚动到特定的页面div以加载其中包含的所有需要​​的元素。据我所知,JavaScript 代码是正确的,但它一直给我这个错误:

selenium.common.exceptions.JavascriptException: Message: TypeError: document.getElementsByClassName(...)[0] is undefined

这是错误所指的行:

bot.execute_script("document.getElementsByClassName('uiScrollableAreaBody')[0].scrollTo(0,1000)")
4

1 回答 1

0

似乎是脚本试图在页面加载之前获取元素。尝试使用显式等待或time.sleep(x)(我个人更喜欢第一种方法,以便您的脚本不会停止 x 秒数。

这是伪代码。

element = WebDriverWait(driver,30).until(lambda x: x.execute_script("return document.getElementsByClassName('uiScrollableAreaBody')[0]"))
# now you can perform operation on the element
于 2020-05-25T01:25:49.480 回答