selenium,最正确的网页等待方式

简介: selenium,最正确的网页等待方式

Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。他支持市场上绝对多数的浏览器。这个工具的主要功能包括:测试与浏览器的兼容性——测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能——创建回归测试检验软件功能和用户需求。支持自动录制动作和自动生成 .Net、Java、Perl等不同语言的测试脚本。

看了Selenium的简介有没有觉得它很牛呢?其实即使我们并非是做自动化测试的工作,学会这个软件也可以在生活中帮我们大忙。它除了用于自动化测试,还能用于爬虫上面。

接触过爬虫的小伙伴都知道静态网页是最好爬的。但是要是遇到动态加载,懒加载,js脚本加载的页面那就没那么好爬了。因为直接获取网站的时候,网页甚至没有打开。这时候用Selenium是一个非常正确的选择。

我们用Selenium只需要加个等待函数就行了。

方法一:

# 等待 3 秒 
from time import sleep 
sleep(3)

这是python本来就有的等待命令,无论如何都会等上3秒才会执行下一步。那么这个方法是有缺陷的。它会遇到两种问题。

问题一:要是等待了3秒,但是网站还是没有加载完,这样子继续执行就会因为取不到网页有的元素而报错。

问题二:当然我们可以直接固定5秒,10秒等待。不过这样子就会造成等待时间的浪费。

方法二:

driver.implicitly_wait(10)

上面的语句用的是selenium里面的方法,具体是每0.5秒执行一下寻找元素,要是找到那就直接不用等待。然后这里的10是最大的等待时间。

用implicitly_wait可以避免了等待时间的浪费。是更加科学的等待方式。

上面讲解相信大家很容易就能理解。有兴趣学完整地学习selenium的话,可以关注公众号:诗一样的代码,留言给我,我教你系统地学。

相关文章
|
7月前
|
存储 搜索推荐 数据挖掘
使用selenium库模拟浏览器行为,获取网页的cookie值
使用selenium库模拟浏览器行为,获取网页的cookie值
|
7月前
|
搜索推荐 API 数据安全/隐私保护
使用Selenium进行网页登录和会话管理
使用Selenium进行网页登录和会话管理
|
8月前
|
XML 数据采集 JSON
scrapy_selenium爬取Ajax、JSON、XML网页:豆瓣电影
在网络爬虫的开发过程中,我们经常会遇到一些动态加载的网页,它们的数据不是直接嵌入在HTML中,而是通过Ajax、JSON、XML等方式异步获取的。这些网页对于传统的scrapy爬虫来说,是很难直接解析的。那么,我们该如何使用scrapy_selenium来爬取这些数据格式的网页呢?本文将为你介绍scrapy_selenium的基本原理和使用方法,并给出一个实际的案例。
|
5月前
|
监控 数据挖掘 Java
Scala中使用Selenium进行网页内容摘录的详解
Scala中使用Selenium进行网页内容摘录的详解
|
8月前
|
Python
selenium--等待的三种方式
selenium--等待的三种方式
|
9月前
|
数据采集 前端开发 JavaScript
解析网页弹窗验证机制及应对策略的Selenium爬虫案例
解析网页弹窗验证机制及应对策略的Selenium爬虫案例
|
10月前
|
Python
Python:Selenium中三种等待方法说明
Python:Selenium中三种等待方法说明
60 0
|
10月前
|
数据采集 C#
使用c#和selenium获取网页
selenium 和 c# 的应用之一是创建一个网络爬虫,它可以从网页中抓取数据进行分析。网络爬虫是一种访问网页并从中提取信息的程序。 Selenium 是一个框架,它允许我们自动执行浏览器操作,例如单击、键入或导航。 C# 是一种编程语言,可用于编写网络爬虫的逻辑和功能。
103 0
|
11月前
|
测试技术
Selenium 操作表单元素、行为链、操作Cookie和页面等待
Selenium 操作表单元素、行为链、操作Cookie和页面等待
|
11月前
selenium 三种等待方式
selenium 三种等待方式

热门文章

最新文章

相关实验场景

更多