我是 selenium 和 python 的新手,我在寻找识别自动化所需的页面元素的最佳方法时遇到问题。 我有一个网页,上面有很多 JavaScript。当我在登录表单中使用 firefox 的检查元素作为用户名字段时,我看到一个带有 id 的输入标签,但是当我要求 selenium 查找该 id 时,它说找不到。 我想仔细检查我在 Firefox 中看到的实际上是 Selenium 看到的,所以我尝试了:
with open("login.html","w") s f:
f.write(driver.page_source)
我在生成的文件中根本看不到任何输入元素。
基于我尝试过的另一个 stackoverflow 问题:
DOM=driver.execute_script("return document.documentElement.outerHTML")
with open("login.html","w") as f:
f.write(DOM)
仍然没有输入元素。
是否有更好的方法来查看所有 dom 元素和/或找到正确的 xpath/ids 来起诉我的 selenium 脚本?
最佳答案
尝试通过 document.body.innerHTM
获取所有正文 HTML
html = driver.execute_script("return document.body.innerHTML;")
with open("login.html","w") as f:
f.write(html)
关于javascript - 如何使用 selenium webdriver 转储整个 dom 结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50417529/