You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Python+Selenium保存Telegram的LocalStorage实现自动登录?

如何用Selenium保存Telegram的LocalStorage数据

Selenium没有直接操作LocalStorage的API,但可以通过执行JavaScript来读取和写入LocalStorage数据。以下是完整的保存与恢复代码:

保存LocalStorage数据

和你保存Cookies的方式一致,我们可以用pickle把LocalStorage的键值对序列化后保存到文件:

import pickle

# 执行JavaScript获取LocalStorage所有键值对
local_storage = driver.execute_script("""
    const storageData = {};
    for (let i = 0; i < localStorage.length; i++) {
        const key = localStorage.key(i);
        storageData[key] = localStorage.getItem(key);
    }
    return storageData;
""")

# 将数据写入文件
pickle.dump(local_storage, open(f"{Login1}_localstorage", "wb"))

加载LocalStorage数据

后续登录时,需要把保存的LocalStorage数据恢复到浏览器中:

import pickle
import json

# 读取本地保存的LocalStorage数据
local_storage = pickle.load(open(f"{Login1}_localstorage", "rb"))

# 执行JavaScript将数据写入LocalStorage
for key, value in local_storage.items():
    # 用JSON转义处理特殊字符,避免JS语法错误
    driver.execute_script(f"localStorage.setItem('{key}', {json.dumps(value)});")

注意事项

  • 必须在Telegram网页完全加载完成后,再执行LocalStorage的读取或写入操作,否则可能获取不到目标存储项。
  • 如果存储的内容包含特殊字符(比如单引号、换行符),一定要用json.dumps()转义,避免JavaScript执行报错。

内容的提问来源于stack exchange,提问作者Ambamamba

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 03:15:52