• pythonselenium 跳过登录验证


    一、利用ChromeOptions() 加载用户配置

    1.1 在谷歌浏览器中输入chrome://version,查看安装目录及缓存目录

    1.2 代码实现

       在执行代码之前,关闭已打开的谷歌浏览器,防止chromedriver挂起

    
    
     1 from selenium import webdriver
     2 import time
     3 
     4 #1、Selenium启动Chrome时,加载用户配置文件
     5 option = webdriver.ChromeOptions()
     6 #在谷歌浏览器中输入chrome://version,查看安装目录及缓存目录
     7 #--user-data-dir 指定用户文件夹User Data路径
     8 option.add_argument("--user-data-dir=C:\\Users\\devz400-08\\AppData\\Local\\Google\\Chrome\\User Data")
     9 
    10 #初始化 -- 加载用户配置
    11 driver = webdriver.Chrome(chrome_options=option)
    12 driver.maximize_window()
    13 driver.get("http://open.flyme.cn/")
    14 time.sleep(5)
    
    

    执行完成后,打开的页面是已经登录的状态

    二、利用cookies跳过登录

    2.1 启用谷歌插件EditThisCookie抓取百度登录cookies/抓包软件也可以获取到cookies哦

    2.2 代码实现

    #2、跳过cookies验证
    driver = webdriver.Chrome()
    driver.maximize_window()
    #将身份识别的cookies添加到本次的浏览器当中--用字典表达
    '''
    如:driver.add_cookie({'name' : 'foo', 'value' : 'bar'})

    例如:键值对{"lg_":"aaabbb"}
    需要指定name及value对应的值
    cookie={“name”:“lg_”,“value”:“aaabbb”}
    '''
    cookies_1={"name":"BAIDUID","value":"BAIDUID的value值--以具体的为准"} 
    cookies_2={"name":"BDUSS","value":"BDUSS的value值--以具体的为准"}
    #先访问以下首页
    driver.get("https://www.baidu.com/")
    #将cookies添加上去 
    driver.add_cookie(cookies_1)
    driver.add_cookie(cookies_2)
     
    #访问主页
    driver.get("https://www.baidu.com/?tn=62095104_7_oem_dg")
     
    打开百度首页时就是已经登录的状态啦


    参考文档【Selenium】Option加载用户配置,Chrom命令行参数:https://www.cnblogs.com/baoyu7yi/p/7058537.html

     

     
  • 相关阅读:
    java之JDBC
    git删除未监视的文件
    java之正则表达式
    linux命令之信息显示与搜索文件命令
    linux命令之文件备份与压缩命令
    gitlab中修改项目名称客户端修改方法
    linux中使用unzip命令中文乱码解决办法
    使用Python进行统计量描述
    Machine Learning
    Courase Neural Networks for Machine Learning Lecture1 Note
  • 原文地址:https://www.cnblogs.com/simran/p/9259467.html
Copyright © 2020-2023  润新知