seleniumUI自動化使用cookie登錄

一共分兩步,第一步取到cookie,第二步加入到登錄的瀏覽器的userdata裏。

 

 

getcookies.py  #取登錄系統的cookie存到txt裏
from selenium import webdriver
import time
import json

driver = webdriver.Chrome()
driver.get("https://www.baidu.com")
time.sleep(10)  #在此時間手動登錄,然後程序自動取cookies
with open("./cookies.txt", 'w') as f:
    f.write(json.dumps(driver.get_cookies()))

driver.close()

 test.py  #添加cookie到測試系統中,多用戶操作可以使用一個帳號登錄使用。

from selenium import webdriver
import json

driver = webdriver.Chrome()

driver.get("https://wwww.baidu.com")
driver.delete_all_cookies()

with open('./cookies.txt','r') as f:
    # print(f.readlines())
    cookies_list = json.load(f)

    #方法1 expiry 變int
    for cookie in cookies_list:
        if isinstance(cookie.get('expiry'), float):
        # if isinstance(cookie.get('expiry'), int):  //有時侯是float
            print(cookie['expiry'])
            cookie['expiry'] = int(cookie['expiry'])
            driver.add_cookie(cookie)

    # 方法2
    for cookie in cookies_list:
        if 'expiry' in cookie:
            del cookie['expiry']
            driver.add_cookie(cookie)

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章