selenium新手入门教程-常见错误汇总

最近学习用selenium来做简单爬虫,新手问题太多了,自学编程确实坑比较多,最简单的一个例子,就是忘记了使用xpath之前必须先通过etree来实例化对象,浪费很多时间。这篇文章会陆续更新我在使用selenium过程中遇到的一些坑。

1、获得网页源码后解析内容必须先实例化

python使用任何一个函数或者模块,必须先实例化后再使用,这其实是一个基本常识,但是新手就是容易忘记,比如我通过selenium的page_text = bro.page_source获得了网站源码,然后我就直接page_text.xpath开始解析内容了,提示错误,这个问题困扰我好几天,最后发觉是xpath必须先实例化才行,前面看视频教程,都只简单看了下,忘记了。想要解析源码,

先要导入from lxml import etree导入模块

然后tree = etree.HTML(page_text)实例化对象

然后就可以正常用xpath解析了。

2、selenium获取不到元素错误

常见错误selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element:

这个要不是定位错误了,要不就是页面还没解析出来就开始定位,解决办法很简单,用sleep先停几秒然后再开始操作。

import time,然后在定位元素之前time.sleep(2),也就是停留几秒,等页面充分打开后再开始操作即可。

3、有些网站selenium 打开的窗口和直接打开窗口,xpath不一样,在selenium打开的窗口中找xpath才不会出错

4、selenium关闭窗口方法

web.close()关闭当前打开窗口

web.quit()关闭所有窗口