4.基础操作方法2

作者: f5423d3134f0 | 来源:发表于2020-12-03 17:32 被阅读0次

    selenium_day_4

    1.单选框和复选框

    • 单选框 type:radio
      • 定位-->点击
      • 判断是否被选中
        • 元素.is_selected()
    • 复选框 type:checkbox
      • 只选择一个---->同单选框一样
      • 全选
        • 定位所有复选框
        • 遍历
          • 判断是否被选中
          • 点击
      • 选择部分
        • 将部分提取出来生成一个列表格式,做筛选

    2.浏览器加载项实现免登陆(了解)

    • 手动登录一次,并且记住密码
    • 火狐浏览器
      • 1.找配置文件夹路径 profile_directory变量名保存
      • 2.profile = webdriver.FirefoxProfile(profile_directory)
      • 3.driver = webdriver.Firefox(profile)
      • 4.打开需要免登陆的地址
    • 谷歌浏览器
      • 1.个人资料路径 user_data_dir = "--user-data-dir=路径"
      • 2.options = webdriver.ChromeOptions()
      • 3.options.add_argument(user_data_dir)
      • 4.driver = webdriver.Chrome(options=options)
      • 5.打开需要免登陆的地址

    3.富文本操作

    • 富文本
      • 可以编辑输入文字的输入框
    • 操作富文本相当于操作iframe

    4.上传文件

    • 对于input类型的type=file
      • send_keys("文件路径")

    5.cookie

    因为HTTP协议是无连接,无状态的

    cookie---记录用户信息,身份识别,不安全

    ​ 客户端--浏览器

    ​ cookie保存的信息按照键值对形式保存的

    ​ sessionID和用户的IP绑定

    session---保存在服务端

    token---针对移动端

    5.1cookie组成

    {'domain': 'baidu.com', 'expiry': 3715061771.33889, 'httpOnly': False, 'name': 'BAIDUID', 'path': '/', 'secure': False, 'value': '365A71E423ECB961F95747D0BB3C7F5D:FG=1'}

    • domain: cookie的域名
    • httpOnly:预防XSS攻击--跨站脚本攻击
    • name: cookie名称 必须存在一个属性
    • path: cookie产生的路径
    • secure: 定义cookie安全性
    • value: cookie名称对应的值 必须存在一个属性
    • expiry: cookie有效期

    5.2cookie操作

    • 获取所有的cookie
      • driver.get_cookies() # 格式,列表嵌套字典[{},{},{}.....]
    • 添加cookie
      • driver.add_cookie(字典格式参数)

    6.元素等待

    1.sleep

    • 强制等待-----Python代码

    2.隐式等待

    • 针对的是整个页面;在固定等待时间内,检测整个页面的元素是否加载成功
    • implicitly_wait()
      • 参数:时间---最大等待时间,单位秒s

    3.显式等待

    • 针对具体元素:在固定等待时间内,检测元素是否存在---检测方式---轮询
    • WebDriverWait 类
      • WebDriverWait(driver,timeout).until(method)
        • driver --浏览器
        • timeout --最大等待时间
        • method --将一个方法作为参数使用

    7.EC模块

    expected_conditions---预期条件:对selenium中一些方法做的封装

    • EC模块一般和WebDriverWait配合使用
      • WebDriverWait(driver,timeout).until(EC.方法)
    • title_is(预期标题) ---判断页面标题是否和预期标题完全一致

    相关文章

      网友评论

        本文标题:4.基础操作方法2

        本文链接:https://www.haomeiwen.com/subject/gzmrwktx.html