LogoLexmount 文档
LogoLexmount 文档
首页

介绍

使用指南OpenClaw 接入 Lexmount 说明Codex Skill 接入 Lexmount 说明
Python SDK快速开始核心能力示例与参考
X (Twitter)
Python SDK

快速开始

安装 SDK、配置凭据,并用 Playwright 接入远端浏览器。

这一页把仓库 README、Sphinx quick start 和 quickstart 示例仓库入口整理成适合 Lex Home 的入门文档。

仓库环境准备

如果你想运行仓库中的示例代码,请按以下步骤操作:

1. 创建虚拟环境

# 进入项目目录
cd /path/to/lexmount-python-sdk

# 使用 Python 内置的 venv 创建虚拟环境
python3 -m venv venv

2. 激活虚拟环境

# Linux/macOS
source venv/bin/activate

# Windows
venv\Scripts\activate

3. 以开发模式安装 SDK

# 安装 SDK 和所有依赖(包括开发依赖)
pip install -e ".[dev]"

这会以可编辑模式安装 SDK,代码修改会立即生效,无需重新安装。

4. 配置环境变量

在项目根目录创建 .env 文件:

LEXMOUNT_API_KEY=your-api-key-here
LEXMOUNT_PROJECT_ID=your-project-id-here
# 可选:测试环境
LEXMOUNT_BASE_URL=https://api.lexmount.cn

5. 运行示例

# 从项目根目录运行
python3 examples/context_basic.py
python3 examples/session_list.py

# 或从 examples 目录运行
cd examples
python3 ./context_basic.py

注意: 每次新开终端时,需要重新激活虚拟环境:

source venv/bin/activate

基础用法

from lexmount import Lexmount

# 初始化客户端(从环境变量读取凭据)
client = Lexmount(
    api_key="your-api-key",
    project_id="your-project-id"
)

# 创建浏览器会话
session = client.sessions.create()
print(f"会话 ID: {session.id}")
print(f"连接 URL: {session.connect_url}")

# 使用完毕后关闭会话
session.close()

使用上下文管理器(推荐)

上下文管理器提供自动资源清理:

from lexmount import Lexmount

# 客户端和会话会自动关闭
with Lexmount(api_key="key", project_id="proj") as client:
    with client.sessions.create() as session:
        print(f"使用会话: {session.id}")
        # 使用会话...
        # 退出时自动关闭

与 Playwright 集成

from lexmount import Lexmount
from playwright.sync_api import sync_playwright

# 创建会话
client = Lexmount(api_key="key", project_id="proj")
session = client.sessions.create()

# 使用 Playwright 连接
with sync_playwright() as p:
    browser = p.chromium.connect_over_cdp(session.connect_url)
    page = browser.new_page()

    page.goto("https://example.com")
    print(page.title())

    browser.close()

session.close()

会话超时由服务端判定。如果已经到达配置的超时时间,但平台在最近 2 分钟内仍然看到客户端 CDP 活跃消息,则该会话会被短暂保活;当这些活跃消息停止超过 2 分钟后,会话会在下一轮超时清理中被回收。

Quickstart 示例仓库

# 1. 创建并激活虚拟环境
python3 -m venv venv
source venv/bin/activate  # Linux/macOS 或 venv\Scripts\activate (Windows)

# 2. 安装依赖
pip install -r requirements.txt

# 3. 创建 .env 文件
cp .env.example .env
# 编辑 .env 填入实际的 API Key 和 Project ID
# office 测试环境可设置:
# LEXMOUNT_BASE_URL=https://apitest.local.lexmount.net

# 4. 运行示例
python3 demo.py              # 基础演示
python3 light_demo.py        # 轻量浏览器演示
python3 extension_basic.py   # 插件演示
python3 proxy_demo.py        # 代理演示
python3 inspect_url_demo.py  # Inspect URL 演示

Sphinx Quick Start 对照

Installation

Install using pip:

pip install lexmount

Configuration

Set your API credentials as environment variables:

export LEXMOUNT_API_KEY="your-api-key"
export LEXMOUNT_PROJECT_ID="your-project-id"

Or pass them explicitly:

from lexmount import Lexmount

client = Lexmount(
    api_key="your-api-key",
    project_id="your-project-id"
)

Creating a Session

from lexmount import Lexmount

client = Lexmount(api_key="key", project_id="proj")

# Create a session
session = client.sessions.create()
print(f"Session ID: {session.id}")
print(f"Connect URL: {session.connect_url}")

# Don't forget to close!
session.close()

Using Context Managers

The recommended way is to use context managers for automatic cleanup:

from lexmount import Lexmount

with Lexmount(api_key="key", project_id="proj") as client:
    with client.sessions.create() as session:
        print(f"Using session: {session.id}")
        # Session automatically closed

Listing Sessions

# List all sessions
result = client.sessions.list()
print(f"Total sessions: {result.pagination.total_count}")

for session in result.sessions:
    print(f"{session.id}: {session.status}")

# List only active sessions
active = client.sessions.list(status="active")
print(f"Active sessions: {len(active)}")

Error Handling

from lexmount import (
    Lexmount,
    AuthenticationError,
    SessionNotFoundError,
    TimeoutError
)

try:
    client = Lexmount(api_key="key", project_id="proj")
    session = client.sessions.create()
except AuthenticationError:
    print("Invalid credentials")
except TimeoutError:
    print("Request timed out")
except SessionNotFoundError:
    print("Session not found")

Logging

Enable debug logging:

from lexmount import set_log_level

set_log_level("DEBUG")

# Now all SDK operations will log detailed information
client = Lexmount(api_key="key", project_id="proj")
session = client.sessions.create()

Office 测试环境

export LEXMOUNT_BASE_URL="https://apitest.local.lexmount.net"

Python SDK

导入到 Lex Home 的 Lexmount Python SDK 文档。

核心能力

Python SDK 提供的 sessions、contexts、extensions 和 downloads 能力。

目录

仓库环境准备
1. 创建虚拟环境
2. 激活虚拟环境
3. 以开发模式安装 SDK
4. 配置环境变量
5. 运行示例
基础用法
使用上下文管理器(推荐)
与 Playwright 集成
Quickstart 示例仓库
Sphinx Quick Start 对照
Installation
Configuration
Creating a Session
Using Context Managers
Listing Sessions
Error Handling
Logging
Office 测试环境