Skip to content
项目

Rabornkraken/browser2api has 28 GitHub stars and 6 forks. GitHot measured 0 stars in 24 hours and 0 in 7 days. Last checked 2026-11-15 07:04 UTC. Last push 2026-03-02.

这些数字如何统计

实测星标增长

24小时
0
7天
0
15天
正在收集历史
1个月
正在收集历史

各周期内的星标净变化,周期相互重叠,并非每日新增。缺失的测量保持空白。星标代表关注度,不代表软件质量。

关于

Turn browser UIs into programmatic image and video generation APIs. Automates image generation tools such as Jimeng (即梦AI) and Google Flow via Playwright + Chrome CDP — no API keys or reverse engineering needed.

创作与媒体

README_CN.md

原文

browser2api

将浏览器 UI 转化为可编程的图像和视频生成 API。

通过 Playwright + Chrome CDP 自动化网页 UI — 无需 API 密钥或逆向工程。

Python 3.11+ Playwright Chrome CDP

English | 中文


支持的平台

即梦 即梦AI

图片生成: Seedream 5.0 — 最多4张,2K/4K
视频生成: Seedance 2.0 — 5秒/10秒,最高1080p

Google Google Flow

图片生成: Imagen 4, Nano Banana 2 — 最多4张
视频生成: Veo 3.1 — Fast / Quality

演示

即梦 — 使用 Seedream 5.0 生成图片 · "一只柴犬在拉面店里吃拉面,日本动漫风格"

https://github.com/user-attachments/assets/616f7f5f-1b20-49dd-9579-4680f310a32b

Google Flow — 使用 Nano Banana 2 生成图片 · "Shiba eating ramen, anime style"

https://github.com/user-attachments/assets/8df63cf4-a429-48df-a26d-74be0c23b7e5

Google Flow — 使用 Veo 3.1 Fast 生成视频 · "A cat walking through a garden"

https://github.com/user-attachments/assets/7b69ccf4-4824-4bff-adca-11dfc12fcbbf

安装

python3 -m venv .venv
source .venv/bin/activate
pip install -e .
playwright install chromium

需要 Python 3.11+ 和本地安装的 Google Chrome。

快速开始

即梦 — 图片生成

python examples/generate.py "一只穿着宇航服的猫咪站在月球表面"
python examples/generate.py "提示词" --model jimeng-5.0 --ratio 1:1 --resolution "超清 4K"

可用模型: jimeng-3.0 jimeng-3.1 jimeng-4.0 jimeng-4.1 jimeng-4.5 jimeng-4.6 jimeng-5.0

即梦 — 视频生成

python examples/generate_video.py "一只猫在花园里散步"
python examples/generate_video.py "城市夜景" --ratio 16:9 --duration 10s --model video-3.0-fast

可用模型: seedance-2.0-fast seedance-2.0 video-3.5-pro video-3.0-pro video-3.0-fast video-3.0

Google Flow — 图片生成

python examples/generate_flow.py "山脉上的日落,数字艺术风格"
python examples/generate_flow.py "提示词" --model nano-banana-2 --orientation portrait --count 4

可用模型: nano-banana-pro nano-banana-2 imagen-4

Google Flow — 视频生成

python examples/generate_flow_video.py "一只猫在花园里散步"
python examples/generate_flow_video.py "提示词" --model veo-3.1-quality --orientation portrait --count 1

可用模型: veo-3.1-fast veo-3.1-quality veo-2-fast veo-2-quality

工作原理

  1. 启动 — 通过 CDP 打开真实的 Chrome 浏览器(非 Playwright 内置 Chromium),用于反检测
  2. 登录 — 检查有效会话。如未登录,打开有界面的浏览器供手动登录。会话持久化保存在 ~/.browser2api/browser_data/
  3. 生成 — 导航到生成页面,通过 UI 自动化配置模型/设置,填写提示词,点击提交
  4. 捕获 — 拦截网络响应并轮询 DOM 获取生成的内容
  5. 下载 — 将结果下载到本地

编程接口

import asyncio
from browser2api import BrowserManager, Platform
from browser2api.platforms.jimeng import JimengClient, JimengModel, JimengRatio

async def main():
    bm = BrowserManager()
    context, page = await bm.launch_for_login(Platform.JIMENG)

    client = JimengClient(
        page, context,
        output_dir="./output",
        model=JimengModel.JIMENG_5_0,
        ratio=JimengRatio.RATIO_1_1,
    )

    result = await client.generate_images("一只猫", count=4, timeout_seconds=120)
    print(f"状态: {result.status.value}")
    for img in result.images:
        print(f"  {img.local_path} ({img.width}x{img.height})")

    await bm.close()

asyncio.run(main())
from browser2api.platforms.flow import FlowVideoClient, FlowVideoModel, FlowOrientation

async def generate_flow_video():
    bm = BrowserManager()
    context, page = await bm.launch_for_login(Platform.FLOW)

    client = FlowVideoClient(
        page, context,
        output_dir="./output",
        model=FlowVideoModel.VEO_3_1_FAST,
        orientation=FlowOrientation.LANDSCAPE,
    )

    result = await client.generate_video("A cat walking through a garden", timeout_seconds=300)
    print(f"视频: {result.video.local_path} ({result.video.size_bytes:,} bytes)")

    await bm.close()

注意事项

即梦AI

  • 建议开通会员 — 视频生成需要会员,图片生成的每日额度也会更高。
  • 登录方式 — 首次运行时会打开 Chrome 浏览器窗口,需手动登录。登录状态会保存并在后续运行中复用。
  • 4K 分辨率 — 需要会员。免费账户限制为 2K。
  • 视频生成耗时 — 根据模型和时长,通常需要 30-120 秒。

Google Flow

  • 需要 Google 账号 — 必须在浏览器中登录 Google 账号。
  • 地区限制 — 部分地区可能无法使用,可能需要 VPN。
  • 视频生成耗时 — 根据模型不同,通常需要 60-120+ 秒。

项目结构

src/browser2api/
├── config.py              # 共享常量 (DATA_DIR)
├── types.py               # Platform, GenerationStatus, GeneratedImage, GeneratedVideo 等
├── base.py                # 抽象基类
├── browser.py             # BrowserManager, ChromeLauncher, CDP 连接
└── platforms/
    ├── jimeng/
    │   ├── client.py      # JimengBaseClient, JimengClient, JimengVideoClient
    │   ├── enums.py       # 模型, 比例, 分辨率, 时长
    │   ├── selectors.py   # CSS 选择器和 URL 常量
    │   └── login.py       # 基于 Cookie 的登录处理
    └── flow/
        ├── client.py      # FlowBaseClient, FlowClient, FlowVideoClient
        ├── enums.py       # 模型, 方向, 视频模型
        ├── selectors.py   # CSS 选择器和 URL 常量
        └── login.py       # 登录处理

免责声明

本项目通过自动化浏览器与第三方平台交互,使用风险自负。

  • 速率限制 — 避免过于频繁的使用,请遵守平台的速率限制和额度。
  • 会话数据 — 浏览器会话数据(Cookie、本地存储)保存在 ~/.browser2api/,请妥善保管。
  • 仅供个人/研究使用 — 未经平台许可,请勿用于商业用途或大规模使用。