Javascript 等待使用Python在Selenium中加载所有资源
我将Javascript 等待使用Python在Selenium中加载所有资源,javascript,python,selenium,Javascript,Python,Selenium,我将Selenium与Python一起使用,以获取网页请求的所有资源的url(包括img用于广告的url,这些广告通常位于嵌套的iframe中)。但是,这可能不适用于iframes中的资源和ajax请求。阅读上的文档并查看StackOverflow答案,您似乎可以使用ExpectedCondition等待元素出现。但在我的例子中,我必须加载几个网站(数千个顶级Alexa网站),可能没有任何我可以等待的公共元素。我一直在使用driver.set\u page\u load\u timeout(60
Selenium
与Python
一起使用,以获取网页请求的所有资源的url
(包括img
用于广告的url,这些广告通常位于嵌套的iframe中)。但是,这可能不适用于iframes
中的资源和ajax
请求。阅读上的文档并查看StackOverflow
答案,您似乎可以使用ExpectedCondition
等待元素出现。但在我的例子中,我必须加载几个网站(数千个顶级Alexa网站),可能没有任何我可以等待的公共元素。我一直在使用driver.set\u page\u load\u timeout(60)
,因为60
秒似乎是所有嵌套iFrame最终出现的足够长的时间。我想知道是否有人能证实这是否是正确的方法,是否有其他方法比这更好。谢谢
编辑:我知道这个问题以前已经回答过了,但为了澄清我问题的细节,我相信所有这些答案都提供了一个解决方案,可以检测页面上存在的元素,而在我的情况下,我事先没有任何这类知识 我每天都使用selenium,据我所知,目前还没有办法确认iFrame或ajax是否完全加载(据我所知)正在将页面加载超时或time.sleep设置为您认为适合的范围,以便在找不到公共元素作为指示器的情况下检查页面是否完全加载。 关于这一点,许多问题已经得到了回答
我每天都在使用selenium,据我所知,目前还无法确认iframes或ajax是否完全加载(据我所知)正在将页面加载超时或time.sleep设置为您认为适合的范围,以便在找不到公共元素作为指示器的情况下检查页面是否完全加载。 关于这一点,许多问题已经得到了回答
您是否尝试过
文档。readyState
?您是否尝试过文档。readyState
?打电话谢谢您的回答,我将尝试使用预期条件技术。目前,我面临的问题是,预期条件
和设置页面加载超时时间
都没有遵循我给它们的60秒
限制,第一个时间晚得多,第二个时间早得多。有什么想法吗?打电话谢谢你的回答,我会尝试使用预期条件技巧。目前,我面临的问题是,预期条件
和设置页面加载超时时间
都没有遵循我给它们的60秒
限制,第一个时间晚得多,第二个时间早得多。有什么想法吗?