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框架是什麼? –
我可以知道它,但我正在嘗試爲每個頁面編寫一個通用腳本,並且我希望在開始執行其他操作之前,硒會等待加載所有頁面 –