notebooklm-py / get_auth.py
ASEM12345's picture
Upload folder using huggingface_hub
aaee22d verified
"""
NotebookLM 认证获取脚本
在新的 PowerShell 窗口中运行此脚本来获取认证信息
"""
import asyncio
import sys
# 修复 Windows asyncio 问题
if sys.platform == 'win32':
asyncio.set_event_loop_policy(asyncio.WindowsProactorEventLoopPolicy())
from playwright.sync_api import sync_playwright
import json
import os
def login_and_get_auth():
storage_path = os.path.expanduser("~/.notebooklm/storage_state.json")
os.makedirs(os.path.dirname(storage_path), exist_ok=True)
print("正在打开浏览器...")
print("请登录你的 Google 账号...")
with sync_playwright() as p:
browser = p.chromium.launch(headless=False)
context = browser.new_context()
page = context.new_page()
# 导航到 NotebookLM
page.goto("https://notebooklm.google.com", timeout=60000)
# 等待用户登录
input("\n✅ 登录完成后,按 Enter 键保存认证信息...")
# 保存 storage state
context.storage_state(path=storage_path)
browser.close()
print(f"\n✅ 认证信息已保存到: {storage_path}")
# 读取并显示用于 HF Secret 的内容
with open(storage_path, "r", encoding="utf-8") as f:
content = f.read()
print("\n" + "=" * 60)
print("复制以下内容作为 HF Space Secret (NOTEBOOKLM_AUTH_JSON):")
print("=" * 60)
print(content)
return content
if __name__ == "__main__":
login_and_get_auth()