• 【自动化测试不求人】selenium自动化测试cookie应用


      Web测试过程中,常遇到Cookie测试,如查看不同浏览器中的Cookie、Cookie是否起作用等。在Selenium中提供了读取、添加、删除等操作Cookie的方法。详细方法如下所示:

    Cookie操作方法

    方法描述

    add_cookie(cookie_dict)

    在当前会话中添加cookie信息,并且参数是属于字典类型数据

    delete_all_cookies()

    删除所有cookie信息

    delete_cookie(cookie_name)

    删除单个名字为cookie_name”的cookie信息

    get_cookie(cookie_name)

    返回名为“cookie_name”的cookie信息

    get_cookies()

    返回当前会话所有的cookie信息

    需求 :实现百度网盘免登录

    步骤:1)获取登录cookie

    #学习有疑问请联系作者
    #作者qq:2574674466
    #作者邮箱2574674466@qq.com
    #coding=utf-8
    from selenium import webdriver  # import 'webdriver' 模块
    import time
    #加载chrome webdriver驱动
    driver = webdriver.Chrome()
    driver.implicitly_wait(5)
    driver.maximize_window()
    #打开百度主页面
    driver.get('https://pan.baidu.com/') 

    print("before login:") #打印全部cookie

    for cookie_detail in driver.get_cookies():

      print(cookie_detail)

               2)  写入cookie

    #学习有疑问请联系作者
    #作者qq:2574674466
    #作者邮箱2574674466@qq.com
    from selenium import webdriver
    from selenium.webdriver.support.select import  Select
    path= 'C:/Program Files (x86)/Google/Chrome/chromedriver.exe'
    from selenium.webdriver.common.action_chains import ActionChains
    import  time
    from PIL import Image
    driver = webdriver.Chrome(path)
    
    coo =[{'domain': '.baidu.com', 'expiry': 1577880662.270573, 'httpOnly': False, 'name': 'BAIDUID', 'path': '/', 'secure': False, 'value': '5F2BEFF36DF2066CD41FC1A0B683FC6A:FG=1'}, {'domain': '.baidu.com', 'expiry': 1805544677.78773, 'httpOnly': True, 'name': 'BDUSS', 'path': '/', 'secure': False, 'value': 'dzcy15bTlwclBCM2k3NWc4UW9WeEswa3lvTlZVR1BmSG5zSFRnYXpCaFVUVWxjQVFBQUFBJCQAAAAAAAAAAAEAAACfsRPqsK7QprXExa7J-jk2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFTAIVxUwCFcNE'}, {'domain': '.pan.baidu.com', 'expiry': 1548936679.568986, 'httpOnly': True, 'name': 'SCRC', 'path': '/', 'secure': False, 'value': '175fc92046e82fe69c6bf7e3136ccce0'}, {'domain': 'pan.baidu.com', 'expiry': 4138344678.879698, 'httpOnly': False, 'name': 'pan_login_way', 'path': '/', 'secure': False, 'value': '1'}, {'domain': '.pan.baidu.com', 'expiry': 1546431082.000784, 'httpOnly': True, 'name': 'PANPSC', 'path': '/', 'secure': False, 'value': '7510796547527406518%3AlerdBBtX5a8cdsRZ0BVdhOn90oj%2BY%2FIssQ%2F0m%2FxncDQZTC6F31NtRNFLhumo1Yci7UGb%2BBwsnzlKu8WyLCLL4euXvJ%2Fh0Blj2JnHdAqj4cpTefW8aCRF9VfUDd9arCIiMKyNsrzXlkZ9ZcgdTWZcl2NtiaXV6jA2rsgnNL%2BLYct9tn9thbnTpv7IiW4JizVanZlv3sbf6BI%3D'}, {'domain': '.pan.baidu.com', 'expiry': 1577880679.022701, 'httpOnly': False, 'name': 'PANWEB', 'path': '/', 'secure': False, 'value': '1'}, {'domain': '.pan.baidu.com', 'expiry': 1577880680, 'httpOnly': False, 'name': 'Hm_lvt_7a3960b6f067eb0085b7f96ff5e660b0', 'path': '/', 'secure': False, 'value': '1546344681'}, {'domain': '.pan.baidu.com', 'expiry': 1548936679.568947, 'httpOnly': True, 'name': 'STOKEN', 'path': '/', 'secure': False, 'value': 'd19d2b84429e152fd7f439acb853127b004eb97135c551f1db660f850d2aaba5'}, {'domain': '.pan.baidu.com', 'httpOnly': False, 'name': 'Hm_lpvt_7a3960b6f067eb0085b7f96ff5e660b0', 'path': '/', 'secure': False, 'value': '1546344681'}, {'domain': '.baidu.com', 'expiry': 1547208711, 'httpOnly': False, 'name': 'cflag', 'path': '/', 'secure': False, 'value': '13%3A3'}]
    
    for cookie in coo:
        driver.add_cookie(cookie)
    time.sleep(5)
    driver.get("https://pan.baidu.com/")

    视频、学习笔记联系qq:2574674466
    更多内容请关注公众号:“大牛测试

     

     

    欢迎加入交流群:Selenium学习群: 628908894
  • 相关阅读:
    spring boot.定时任务问题记录(TaskScheduler/ScheduledExecutorService异常)
    网站配置https(腾讯云域名操作)
    Java web如何定位工程路径
    centos7安装nginx
    个人博客搭建----基于solo
    velocity学习总结
    第四篇:用IntelliJ IDEA 搭建基于jersey的RESTful api
    Python 包批量升级
    Linux 常用命令更新汇总
    ubuntu 18.04 +firefox + selenium + python
  • 原文地址:https://www.cnblogs.com/tim2016/p/15386390.html
Copyright © 2020-2023  润新知