接触到了selenium板块,涉及到网页浏览器驱动的问题。电脑软件平时升级比较快,我的chrome浏览器已经到了最新版本116.0.5845.32(正式版本)dev (64 位),但是chrome官方发布的驱动只更新到114.0.5735.90。尝试下载最新的114版本的驱动,放到python之下,运行起来直接提示版本不正确。过去的几天一直在等待驱动版本的更新,无果没辙之后只有卸载了我的高版本chrome,安装回低版本的chrome,开始接下来重点内容的学习。
浏览器对了,驱动对了,测试就很顺利流畅的进行下来,痛快!
通过chrome浏览器,在Pycharm模拟环境下,selenium测试使用的代码如下
解释下代码,以备我后面可能会忘掉。在selenium中引入网页驱动,引入演示器;打开chrome浏览器,获取百度网页,停留60s之后关闭网页。很容易理解的一段代码,从上至下逻辑思路很简明的一段代码。
在运行的过程中,chrome浏览器打开的百度页面左上角会有个测试环境的提示,告诉我们chrome浏览器正受到自动测试软件的控制。
继续参考教材中的案例来学习。
这里依然会有个selenium版本迭代更新的问题,先看代码,再来解释。具体代码如下:
解释下代码的含义:
1、引入selenium和网页驱动
2、在selenium中引入By关键字
3、引入时间延迟
4、通过网页驱动打开Chrome浏览器并最大化,延迟3秒钟之后打开百度网页
5、在搜索栏中输入关键字diamond,点击搜索按钮
6、以文本方式输出查找到的第一个结果
7、关闭浏览器。
注意几个非常大的变化
1、代码格式的变化。教材出版在2021年,两年的时间selenium已经从selenium3升级到了selenium4,所以find_element_by_id这种代码已经过时无法使用,需要按照selenium4代码规则编写,即find_element(By.ID,’value’)
2、By关键词需要在一开始就要引入,否则会提示关键词未被定义
对于我这个新人来说,通过接近3个小时的时间发现了核心问题所在,查找到正确的解决方法,还是非常有自豪感的。
#加油!
#一点一滴的努力,未来都会有回报。
#岁月静好,不去羡慕旁人,只做好自己,花朵总会绽放。
#以上学习感悟来自于《网络爬虫进化论:从Excel爬虫到Python爬虫》(中国水利水电出版社2021年出版)