使用Selenium获取呈现页面的当前HTML

时间:2018-02-23 19:22:08

标签: python selenium dom

我很想在facebook应用程序的selenium中获取渲染的html代码。登录后,我转到应用页面并使用time.sleep(20)等待它完全呈现。

我已经尝试了3种解决方案,没有巫婆的作品:

self.driver.page_source # This one returns source code
self.driver.find_element_by_xpath('//*').get_attribute('outerHTML')
self.driver.execute_script("return document.getElementsByTagName('html')[0].outerHTML")

我正在使用谷歌浏览器和python3。只是要清楚。

编辑1:

我不清楚什么不起作用。上面的每一个都返回与我点击“Inspect Element”时所呈现的不同的东西

1 个答案:

答案 0 :(得分:1)

self.driver.find_element_by_xpath("//body").get_attribute('outerHTML')

...并且不要使用time.sleep()。使用WebdriverWait并等待页面上的唯一元素加载。