Chrome webdriver 获取页面信息

test_txt = driver.page_source
tree1 = etree.HTML(test_txt)
html = tree1.xpath('*//div[@id="jxContentPanel"]/div')

 selenium:如何解决打开网页加载时间过长问题

 一、设置WebDriver的页面加载超时时间 

from selenium import webdriver
 
driver = webdriver.Chrome()
 
# 设置页面加载时间
driver.set_page_load_timeout(5)
 
start = time.time()
 
try:
    driver.get(driver.get('http://www.baidu.com'))
except:                                        # 捕获timeout异常
    driver.execute_script('window.stop()')     # 执行Javascript来停止页面加载 window.stop()
 
end = time.time()
# 页面加载所需时间
print(end-start)
 
el = driver.find_element("name", value='wd')
#对元素输入文本
el.send_keys('这是我的第一次尝试')
#找到搜索按钮并点击一次
driver.find_element("id", value='su').click()

二、修改WebDriver的页面加载策略 

默认情况下,SeleniumWebDriver在加载页面时,根据正常的加载策略,就是把get地址的页面及所有静态资源都下载完(如css、图片、js等)。

normal (默认):所有内容加载完成,包括文件、css、js等。

eager:等待初始HTML文档完全加载和解析,并放弃css、图像和子框架的加载。

none:仅等待初始页面下载即可操作。
 

 

normal

import time
from selenium import webdriver
 
start = time.time()
 
driver = webdriver.Chrome()
driver.get('http://www.baidu.com')
 
end = time.time()
print(end-start)
 
el = driver.find_element("name", value='wd')
#对元素输入文本
el.send_keys('这是我的第一次尝试')
#找到搜索按钮并点击一次
driver.find_element("id", value='su').click()
 
 
>>>15.416865825653076 

eager

 import time
from selenium import webdriver
 
options = webdriver.ChromeOptions()
# 配置页面加载策略
options.page_load_strategy = 'eager'
driver = webdriver.Chrome(options=options)
 
start = time.time()
 
driver = webdriver.Chrome()
driver.get('http://www.baidu.com')
 
end = time.time()
print(end-start)
 
el = driver.find_element("name", value='wd')
#对元素输入文本
el.send_keys('这是我的第一次尝试')
#找到搜索按钮并点击一次
driver.find_element("id", value='su').click()
 
 
>>>4.887652158737183

 normal

import time
from selenium import webdriver
 
options = webdriver.ChromeOptions()
# 配置页面加载策略
options.page_load_strategy = 'none'
driver = webdriver.Chrome(options=options)
 
start = time.time()
 
driver = webdriver.Chrome()
driver.get('http://www.baidu.com')
 
end = time.time()
print(end-start)
 
el = driver.find_element("name", value='wd')
#对元素输入文本
el.send_keys('这是我的第一次尝试')
#找到搜索按钮并点击一次
driver.find_element("id", value='su').click()
 
 
>>>3.415907144546509

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值