首页 > 编程语言 >Python selenium

Python selenium

时间:2023-02-19 22:33:06浏览次数:38  
标签:cookies 浏览器 Python selenium driver chrome 测试

目录

selenium

Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera,Edge等。这个工具的主要功能包括:测试与浏览器的兼容性——测试应用程序看是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能——创建回归测试检验软件功能和用户需求。支持自动录制动作和自动生成.Net、Java、Perl等不同语言的测试脚本。

功能

  • 框架底层使用JavaScript模拟真实用户对浏览器进行操作。测试脚本执行时,浏览器自动按照脚本代码做出点击,输入,打开,验证等操作,就像真实用户所做的一样,从终端用户的角度测试应用程序。
  • 使浏览器兼容性测试自动化成为可能,尽管在不同的浏览器上依然有细微的差别。
  • 使用简单,可使用Java,Python等多种语言编写用例脚本。

Python实现

from selenium import webdriver
import time
from selenium.webdriver.chrome.options import Options

chromedriver_path = r"C:\Program Files\Google\Chrome\Application\chromedriver.exe"

# 设置chrome无头模式
chrome_option = Options()
chrome_option.add_argument("--headless")

# 实例化一个chrome浏览器(无头模式传入chrome_options)
driver = webdriver.Chrome(
    executable_path=chromedriver_path, chrome_options=chrome_option)


# 发送请求
driver.get("https://www.baidu.com/")

# 定位元素
# driver.find_element("id", "kw").send_keys("python")  # 定位搜索框ID,并输入python
# driver.find_element("id", "su").click()  # 定位百度一下ID,并点击

# 设置截图分辨率
driver.set_window_size(1920, 1080)  # 设分辨率
# driver.fullscreen_window() # 满屏
# driver.maximize_window() #最大化
driver.save_screenshot("./baidu.png")

# driver 获取cookies
cookies = driver.get_cookies()
print(cookies)
print("*"*50)
#字典推导式,展开字典
cookies = {i["name"]: i["value"] for i in cookies}
print(cookies)

# 获取html页面内容
html_str = driver.page_source  # 获取的是elemnets中的内容
with open("./baidu.txt", "w", encoding="utf-8") as f:
    f.write(html_str)

# 退出程序
time.sleep(3)
driver.quit()

标签:cookies,浏览器,Python,selenium,driver,chrome,测试
From: https://www.cnblogs.com/thankcat/p/17135820.html

相关文章

  • python中的类继承
    """"""classAnimal(object):def__init__(self,name,food):self.name=nameself.food=foodself.blood=100self.waise......
  • python中的数据模型
    参考:https://docs.python.org/zh-cn/3/reference/datamodel.html1. 对象、值与类型对象 是Python中对数据的抽象。Python程序中的所有数据都是由对象或对象间关系......
  • 【Python】爬虫-Xpath
    Xpath文章参考:https://www.cnblogs.com/mxjhaima/p/13775844.html#案例安装pipinstalllxml引用fromlxmlimportetree获取文档树对象通过Xpath获取文档的......
  • python方法、类方法和静态方法的区别
    classA:deff1():passdeff2(self):pass@classmethoddeff3(cls):pass@staticmethoddeff4():pass......
  • 【Python】Python实现提前查询考研成绩
    ✨Python实现提前查询考研成绩自命题院校可能会在考研成绩正式发布之前将成绩上传到研招网,并进行测试此时就可以提前查询到专业课成绩✨使用说明填写相关信息使用时......
  • python requests 最牛攻略
    目录安装ReuqestsHTTP简介什么是HTTPHTTP工作原理HTTP的9种请求方法HTTP状态码requests快速上手requests发起请求的步骤requests发起请求的两种方式请求参数发起GET......
  • Python报错TypeError: 'NoneType' object is not callable
    Python报错TypeError:'NoneType'objectisnotcallable 保存内容如下  检查src文件后没有发现问题,最终在公共方法找到原因注释掉return了,取消后问题解决 ......
  • 简单的python格网算法算数据密集度demo
    #格网算法计算数据集区域数据密集度importtimeimportrandomimportnumpyasnpimportpandasaspd#模拟数据集defcreate_data():data_x=[]data_y......
  • python代码规范PEP8
    1、引言本文档给出了Python编码规约,主要Python发行版中的标准库即遵守该规约。对于C代码风格的Python程序,请参阅配套的C代码风格指南。本文档和PEP257(文档字......
  • 跟着廖雪峰学python 005
    ​ 函数的调用、定义、参数 ​编辑 #######命名关键字参数没完abs()函数:绝对值>>>abs(100)100>>>abs(-20)20max()函数:接收任意多个参数,并返回最大的那个......