使用python语言的selenium脚本编写一段代码:使用edge浏览器器打开一个网页,打开100次,通过execute_script获取加载时长,放在一个列表里,最后求平均加载时长
时间: 2024-09-27 12:08:37 浏览: 42
在Python中,你可以使用Selenium库配合Edge浏览器和`time.sleep()`函数来实现这个需求。首先确保你已经安装了`selenium`、`webdriver_manager`以及对应的Microsoft Edge WebDriver。以下是一个简单的示例:
```python
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
import time
# 配置Edge浏览器驱动
def get_edge_driver():
from webdriver_manager.microsoft import EdgeChromiumDriverManager
driver = webdriver.Edge(EdgeChromiumDriverManager().install())
return driver
# 打开网页并测量加载时间
def measure_load_time(url, driver, times):
load_times = []
for _ in range(times):
driver.get(url)
# 等待页面完全加载(例如等待某个元素出现)
wait = WebDriverWait(driver, 10) # 设置超时时间为10秒
element = wait.until(EC.presence_of_element_located((By.TAG_NAME, "your_element_tag"))) # 替换为你关注的元素标签
start_time = time.time()
while True:
if "your_element_text" in driver.page_source: # 检查元素文本是否出现,替换为你关心的文本
break
time.sleep(0.5)
end_time = time.time()
load_time = end_time - start_time
load_times.append(load_time)
driver.quit() # 关闭浏览器
return load_times
# 主程序
url = "http://example.com" # 替换为你想打开的网页
times_to_open = 100
driver = get_edge_driver()
load_times_list = measure_load_time(url, driver, times_to_open)
average_load_time = sum(load_times_list) / len(load_times_list)
print(f"平均加载时长: {average_load_time} 秒")