Selenium:Chrome、Edge、Firefox、Opera、Safari常用WebDriver下载安装[通俗易懂]
2023-06-13 09:13:40 时间
大家好,又见面了,我是你们的朋友全栈君。
简介:Selenium中运行需要先配置WebDriver,各主流浏览器安装配置大同小异。
关联攻略:
Python + Jenkins + Selenium-Grid实现分布式web-ui自动化测试(centos+win10为例)
基本操作:
1、下载安装目标浏览器。 2、查看浏览器版本:设置 – 帮助 / 关于浏览器等 3、下载driver 4、解压driver复制粘贴到配置好的环境变量Python所在目录 5、编写代码调试启动
注意事项:
若找不到对应版本,则使用当前浏览器版本之后的driver。
例如:浏览器版本:99,webdriver只匹配有98,100,则选100进行下载。
Chrome:
https://npm.taobao.org/mirrors/chromedriver/
Edge:
https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/
Firefox:
https://github.com/mozilla/geckodriver/releases
Opera:
https://github.com/operasoftware/operachromiumdriver/releases
Safari:mac下才能配置
https://www.jianshu.com/p/17b6ea2c0f06
源码:
from common.logger import log
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.options import Options as ChromeOps
from selenium.webdriver.firefox.options import Options as FirefoxOps
def chrome():
log.info("启动Chrome浏览器")
return webdriver.Chrome()
def firefox():
log.info("启动Firefox浏览器")
return webdriver.Firefox()
def edge():
log.info("启动Edge浏览器")
return webdriver.Edge()
def opera():
log.info("启动Opera浏览器")
return webdriver.Opera()
def safari():
log.info("启动Safari浏览器")
return webdriver.Safari()
def chrome_headless():
chrome_options = ChromeOps()
chrome_options.add_argument('--no-sandbox') # 解决DevToolsActivePort文件不存在的报错
chrome_options.add_argument('--disable-gpu') # 谷歌文档提到需要加上这个属性来规避bug
chrome_options.add_argument('--hide-scrollbars') # 隐藏滚动条, 应对一些特殊页面
chrome_options.add_argument('blink-settings=imagesEnabled=false') # 不加载图片, 提升速度
chrome_options.add_argument('--headless') # 浏览器不提供可视化页面. linux下如果系统不支持可视化不加这条会启动失败
log.info("启动Chrome无界面浏览器")
return webdriver.Chrome(options=chrome_options)
def firefox_headless():
options = FirefoxOps()
options.add_argument('-headless')
log.info("启动Firefox无界面浏览器")
return webdriver.Firefox(options=options)
def get_browser(browser_type):
driver_dict = {
"chrome": chrome,
"firefox": firefox,
"edge": edge,
"opera": opera,
"chrome_headless": chrome_headless,
"firefox_headless": firefox_headless, }
return driver_dict[browser_type]()
if __name__ == '__main__':
url = "http://www.baidu.com"
driver_list = ["chrome", "firefox", "edge", "opera", "chrome_headless", "firefox_headless"]
for driver in driver_list:
browser = get_browser(driver) # 使用浏览器
browser.get(url)
title = browser.title
print("title:", title)
browser.quit()
运行结果:
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/191990.html原文链接:https://javaforall.cn
相关文章
- chrome frame节点 取_Chrome Frame插件解决IE浏览器兼容问题
- Hello Edge: Keyword Spotting on Microcontrollers
- ORA-13115: [string]_EDGE$ table does not exist ORACLE 报错 故障修复 远程处理
- Edge 94开始为企业提供Extended Stable选项:每隔8周更新
- 如何禁止Microsoft Edge小部件在开机时自动运行?
- Microsoft Edge新特性:可滑动调整垂直标签栏宽度
- 微软Edge Canary现在可以让用户一次性删除多个密码
- 倒计时预告:经典版Edge浏览器将于下月和我们彻底说再见
- 微软正测试适用于Xbox的新版Edge 或可运行Google Stadia
- Edge新增“数学求解器” 求解步骤明晰 文字类数学题有待完善
- 随着Microsoft Edge达到新高度 Firefox用户数量大幅下降
- Edge Dev 92.0.902.2发布:优化管理策略 修复Linux版本同步问题
- Edge Dev 93.0.946.1发布:引入Win11外观设计实验Flag等
- #新闻拍一拍# 微软逐渐将经典版 Edge 的诸多优秀特性迁移到新版 Edge 浏览器中
- Google Chrome vs 微软Edge:哪款浏览器更快?
- MacOS Chrome:畅享高效浏览体验(macos chrome)