2、selenium原理和启动浏览器(Chromoption类)

戳:web自动化环境安装(selenium安装、卸载和Chromedriver下载、安装)

一、 selenium

1、selenium简介

  • selenium是一款基于web网页的UI自动化测试框架。
  • 支持多浏览器操作,ie、Firefox、Chrome、edge等
  • 跨平台,windows、Linux、mac都可以
  • 支持多语言,python、java、ruby等

2、selenium原理

  • webdriver是按照client/server模式设计的。
  • selenium代码与浏览器驱动程序之间是通过http协议进行数据交互的,这种方式不在乎客户端是什么样的形式,只要数据的格式和协议是服务端能够解析的就可以。
  • 同行步骤为:
    1、webdriver启动浏览器驱动程序,并设置侦听端口号
    2、webdriver客户端与浏览器服务器建立连接
    3、连接成功之后,所有的操作(比如:查找元素、点击等)都是客户端通过commonexecute发送http请求到服务端;服务端根据收到的请求做相应的操作并返回结果。

二、启动浏览器

1、Google浏览器

# 引入selenium webdriver库
from selenium import webdriver

#实例化Chrome类,与webdriver建立连接,启动一个非常干净的谷歌浏览器,不带任何用户配置信息
browser = webdriver.Chrome()

browser.get("https://www.baidu.com/")
  • executable_path:chrome的路径。默认值为chromedriver,会自动从系统的PATH环境变量中查找。
  • Port:chromedriver的端口号。默认值为0,表示选一个未被占用的一个端口即可。
  • Options:ChromeOptions实例对象。
  • service_args:服务端参数。即chromedriver的参数设置,为列表类型的数据。
  • desired_capabilities:具有非浏览器特定的字典对象。仅限功能,例如“proxy”或“loggingPref”。
  • service_log_path:服务器端日志输出路径。即Chromedriver的日志输出到文件中。

2、设置服务端日志输出

查看chromedriver支持的参数:
跳转到Chromedriver所在的目录,运行命令chromedriver --help

在这里插入图片描述
–verbose:设置所有级别的日志都输出

–log-path:设置日志输出的文件路径

# 引入selenium webdriver库
from selenium import webdriver

# 实例化Chrome类,与webdriver建立连接,启动一个非常干净的谷歌浏览器,不带任何用户配置信息
browser = webdriver.Chrome(service_args=["--verbose"], service_log_path="D:\\Python37-32\chrome_server.log")

browser.get("https://www.baidu.com/")

在这里插入图片描述

三、Chromeoption类

  • 可以通过Chromoption类对启动的浏览器添加一些设置信息。比如添加用户的缓存配置信息等。

1、添加用户配置数据:user-data-dir=path

启动浏览器时,带上用户设置的数据,如保存的登录密码、书签等。Path为谷歌浏览器设置的用户数据目录。一般都是在C:\Users\当前用户名\AppData\Local\Google\Chrome\User Data

 # 引入selenium webdriver库
from selenium import webdriver
import time
# 实例化Chrome类,与webdriver建立连接,启动一个非常干净的谷歌浏览器,不带任何用户配置信息
#browser = webdriver.Chrome(service_args=["--verbose"], service_log_path="D:\\Python37-32\chrome_server.log")
options = webdriver.ChromeOptions()
#可通过添加配置文件,让开启的google浏览器记住配置数据,比如cookies等
#options.add_argument(r"user-data-dir=C:\Users\Administrator\AppData\Local\Google\Chrome\User Data")
#启动浏览器会话
browser = webdriver.Chrome(options=options)
#访问网址
browser.get("https://ke.qq.com/")
#关闭浏览器会话

time.sleep(10)
browser.quit()
  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值