selenium:python如何绕过登录页面登录网页

使用场景
在面对需要账号密码登录的网页时,可以通过定位输入框,使用send_keys
输入账号密码登录。
但是在面对某些无法通过页面直接登录的场景,列如需要微信或者软件扫码、验证码等才能进入页面的情况时,就可以通过cookie进行登录。
本文主要介绍通过记录上一次登录网页的cookie,在cookie生效期间直接绕过登录页面直接进入系统的登录方式。


举例如下:

登录页面后获取登录的cookie

from selenium import webdriver
import json


def get_cookies(url):
    driver = webdriver.Chrome()
    driver.get("url")
    driver.delete_all_cookies()  # 删除所有cookies
    print("+++++++++++++++++++++++请登录+++++++++++++++++++")
    print("+++++++++++++++++++++++输入登录的环境后回车+++++++++++++++++++")
    environment = input()
    cookies = driver.get_cookies()   # 获取cookie,以字典方式返回
    if environment in [ 测试 ,  test ]:
        with open("cookies_test.txt", "w") as f:
            f.write(json.dumps(cookies))  # json.dumps:将字典变成字符串
    f.close()
    driver.quit()

读取之前存入的cookie

from selenium import webdriver
import json
from time import sleep


def login(url):
    driver = webdriver.Chrome()
    driver.get("url")
    driver.delete_all_cookies()  # 删除所有cookies
    with open("cookies_test.txt", "r") as f:
        cookies = json.load(f)  # 将文件字符串转换成python对象
        for cookie in cookies:
            driver.add_cookie(cookie)
    sleep(5)
    driver.refresh()
    sleep(10)
    driver.quit()


这样只要记录的cookie生效,那么就可以不用每次进入系统时都需要在登录页面登录啦~

© 版权声明
THE END
如果内容对您有所帮助,就支持一下吧!
点赞0 分享
糖楚排骨_的头像 - 鹿快
评论 抢沙发

请登录后发表评论

    暂无评论内容