python中使用selenium获取登陆账号的token
记录一下工作之余需要用到内容:
- 浏览器静默模式下的自动化登陆操作
- 获取token
话不多说,直接代码好了
from selenium import webdriver from selenium.webdriver.chrome.options import Options import time #浏览器模式设置 chrome_options=Options() chrome_options.add_argument('--headless')
"""最终的效果:不会弹出浏览器窗口""" driver = webdriver.Chrome(chrome_options=chrome_options) url = "https://www.xxxx.com/index"
def get_token(username, password):
#操作浏览器,打开url,用户名密码登陆 driver.get(url) driver.find_element_by_id("userName").send_keys(username) driver.find_element_by_id("password").send_keys(password) driver.find_element_by_id("password").submit() time.sleep(5)
#获取token的方法:
'''
1、要从Local Storage中获取还是要从Session Storage中获取,具体看目标系统存到哪个中-----开发者模式查看 2、window.SessionStorage和直接写SessionStorage是等效的 3、一定要使用return,不然获取到的一直是None 4、get的Item不一定就叫token,得具体看目标系统把token存到哪个变量中
''' token = driver.execute_script('return localStorage.getItem("token");') driver.close() return token
对于获取项目存储的信息位置信息,可以F12进行查看,如下图:LocalStorage 和 SessionStorage
在实际的操作中,可能会遇到一些问题。由于浏览器静默运行,无法看到具体页面打开的情况,会造成一些莫名其妙的失败问题。
异常影响:
- 网速、网络问题
- 代码问题
因此,我在页面家引入了time模块,进行相关等待时间的设置。解决了因为网速问题而导致脚本的失败的问题
标签:
获取token
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~