https://www.google.cn/chrome/
默认从官网下载的是Chrome安装器,安装过程中需要联网。

2.3 安装chromedriver驱动
从官网选择最新版本下载下来,版本一定要和我们按照的Chrome浏览器的版本一致
2.3.1 Chrome版本号
打开Chrome浏览器,点地址栏右边的三个点,选择“帮助”>“关于 Google Chrome”,找到下图中的版本号。

2.3.2 下载chromedriver驱动
打开驱动下载页面,找到匹配的版本的驱动。
我们只需要保证版本号前面的3段匹配即可,最后一段不用管他,也就是说“91.0.4472”匹配即可。会有很多匹配的项目,因为是Windows平台,所以我们只需要找到win32版本就可以了。如果有多个win32版本,找出版本号最后一段最大的那个即可。
http://chromedriver.storage.googleapis.com/

把<Key>…</Key>里面的资源URI复制导驱动网址后面就可以下载了。
http://chromedriver.storage.googleapis.com/91.0.4472.101/chromedriver_win32.zip
2.3.3 安装chromedriver驱动
解压缩下载下来的压缩包,将里面的chromedriver.exe放到Python的Scripts目录下面。

2.4 隐藏控制台信息
默认情况下,我们使用selenium连接服务器会有一堆的控制台信息,非常不便于我们调试程序。

2.4.1 安装pypiwin32
首先我们需要安装pypiwin32库。
pipinstallpypiwin32

2.4.2 修改service.py
接着我们要改造service.py脚本,下面是service.py脚本的路径位置。
C:Python38Libsite-packagesseleniumwebdrivercommonservice.py
打开service.py脚本,首先导入CREATE_NO_WINDOW。
fromwin32processimportCREATE_NO_WINDOW
接着找到“Starts the Service”关键字位置,修改subprocess.Popen调用,增加参数CREATE_NO_WINDOW。
self.process=subprocess.Popen(cmd,env=self.env,close_fds=platform.system()!='Windows',stdout=self.log_file,stderr=self.log_file,stdin=PIPE,creationflags=CREATE_NO_WINDOW)
配置完需要重新启动编辑器IDLE,然后运行Python程序,这时候观察控制台你会发现“这个世界清静了~~”
3. 测试
现在编写测试代码来测试selenium库是否正常。
3.1 测试
3.1.1 代码
建立Selenium.py程序文件,写入如下代码。
#encoding=UTF-8fromseleniumimportwebdriverimporttimeimportre#initopts=webdriver.ChromeOptions()opts.add_argument("--disable-gpu")opts.add_argument("--no-sandbox")#setoptschrome=webdriver.Chrome(options=opts)#loadbaidu.comchrome.get("http://www.baidu.com")#findkwinputandtype'site:tongfu.net'initinput=chrome.find_element_by_id("kw")input.send_keys("site:tongfu.net")button=chrome.find_element_by_id("su")button.click()#waittime.sleep(3)#getpagesourcesource=chrome.page_source#testsourceregexp=re.compile(r"首页-同福网TONGFU.net",re.M)mats=regexp.search(source)ifmats:print(mats.group())else:print("没有找到")#closechrome.close()
3.1.2 启动程序
运行Selenium.py程序。
首先python会自动启动Chrome浏览器。
接着自动打开www.baidu.com首页,自动输入关键字“site:tongfu.net”,自动点击搜索按钮。
最后检查页面源代码里是否包含“首页- 同福网 TONGFU.net”。

4. 总结
使用Selenium可以实现模拟大部分用户的上网行为,可以用来测试网站功能是否正常,包括用户注册、用户登录、发布主题、回复主题、点赞等等非常具体的操作,Selenium是测试工程师的必修课。
热点文章
2021年独生子女补贴新政策是真的吗(独生子女证有有效期吗)
2021年国庆节阅兵仪式几点开始几点结束(2021年国庆节还有阅兵吗)
鼠目寸光一点红是什么生肖动物(鼠目寸光一点红)指什么生肖,紧密
k0到k9的玩法大全(强制gc的玩法和注意事项)
入土为安是什么生肖《入土为安》打一个生肖动物,词语解释
浙江12月底全面停工是真的吗(浙江什么时候放假停工)
如何做t(t怎么把p做哭)
北京口碑最差的三甲医院(北京301医院最擅长什么)