0
我真的不知道这件事,所以我希望你给我一些建议,如果你可以。硒蟒蛇加载页面和脚本(Firefox和IE)
通常当我使用Selenium时,我尝试搜索我感兴趣的元素,但现在我正在考虑开发某种性能测试,以便检查特定网页(html,脚本等)需要多少时间。 ..) 加载。
你有一些想法如何知道加载时间的HTML,脚本等没有搜索页面的特定元素?
PS我使用IE或Firefox
我真的不知道这件事,所以我希望你给我一些建议,如果你可以。硒蟒蛇加载页面和脚本(Firefox和IE)
通常当我使用Selenium时,我尝试搜索我感兴趣的元素,但现在我正在考虑开发某种性能测试,以便检查特定网页(html,脚本等)需要多少时间。 ..) 加载。
你有一些想法如何知道加载时间的HTML,脚本等没有搜索页面的特定元素?
PS我使用IE或Firefox
你可以检查活动连接底层JavaScript框架。当没有活动连接时,您可以假设该页面已完成加载。
然而,这需要你知道页面使用什么框架,或者你必须系统地检查不同的框架,然后检查连接。
def get_js_framework(driver):
frameworks = [
'return jQuery.active',
'return Ajax.activeRequestCount',
'return dojo.io.XMLHTTPTransport.inFlight.length'
]
for f in frameworks:
try:
driver.execute_script(f)
except Exception:
logging.debug("{0} didn't work, trying next js framework".format(f))
continue
else:
return f
else:
return None
def load_page(driver, link):
timeout = 5
begin = time.time()
driver.get(link)
js = _get_js_framework(driver)
if js:
while driver.execute_script(js) and time.time() < begin + timeout:
time.sleep(0.25)
else:
time.sleep(timeout)
非常感谢,非常感谢;)我怎样才能检查完成加载所有的HTML?有没有类似的东西? –
您是否事先知道底层javascript框架是什么? –
我可以知道它,但我正在尝试为每个页面编写一个通用脚本,并且我希望在开始执行其他操作之前,硒会等待加载所有页面 –