一、获取cookie,写入Excel文件中
1. 提前安装好 xlwt 模块
2. 新建一个cookie_save.py,代码如下:
import time import xlwt from selenium import webdriver driver=webdriver.Chrome() driver.get('需要挠过认证的服务器网址') driver.maximize_window() driver.implicitly_wait(10) #1.准备Excel表 # 创建一个workbook 设置编码 workbook = xlwt.Workbook(encoding='utf-8') # 创建一个worksheet worksheet = workbook.add_sheet('cookie') # 写入excel # 参数对应 行, 列, 值 worksheet.write(0, 0, label='name') worksheet.write(0, 1, label='value') worksheet.write(0, 2, label='path') worksheet.write(0, 3, label='domain') worksheet.write(0, 4, label='httpOnly') worksheet.write(0, 5, label='secure') #2.获取cookices time.sleep(40) #暂定40s: 手工操作,在页面上输入用户名和密码,输入验证码或验证拖动操作,进行登录 cookies=driver.get_cookies() # for cookie in cookies: # print(cookie) # cookies[0]['name'] for i in range(1,len(cookies)+1): # 1,2,3,4,5,6 range()包前不包后 worksheet.write(i, 0, label=cookies[i-1]['name']) worksheet.write(i, 1, label=cookies[i-1]['value']) worksheet.write(i, 2, label=cookies[i-1]['path']) worksheet.write(i, 3, label=cookies[i-1]['domain']) worksheet.write(i, 4, label=cookies[i-1]['httpOnly']) worksheet.write(i, 5, label=cookies[i-1]['secure']) #3.写入文件 # 保存 workbook.save('Excel_cookies.xls') print('Cookies 已保存完毕!')
二、读取存放了cookie的Excel中的认证信息数据
1. 提前安装好 xlrd 模块
2. 同一目录下,新建一个cookie_read.py,代码如下:
import time import xlrd from selenium import webdriver driver=webdriver.Chrome() driver.get('需要挠过认证的服务器网址') driver.maximize_window() driver.implicitly_wait(10) """打开Excel表""" wookbook=xlrd.open_workbook('Excel_cookies.xls') """获取sheet""" sheet=wookbook.sheet_by_name('cookie') cookie_list=[] for row_num in range(1,sheet.nrows): #1,2,3,4,5,6 cookie_dict={} cookie_dict['name']=sheet.cell_value(row_num,0) cookie_dict['value'] = sheet.cell_value(row_num, 1) cookie_dict['path'] = sheet.cell_value(row_num, 2) cookie_dict['domain'] = sheet.cell_value(row_num, 3) cookie_dict['httpOnly'] = bool(sheet.cell_value(row_num, 4)) cookie_dict['secure'] = bool(sheet.cell_value(row_num, 5)) cookie_list.append(cookie_dict) for cookie in cookie_list: print(cookie) driver.add_cookie(cookie) #给驱动添加cookie time.sleep(2) driver.refresh() #刷新网页,登录成功