E2B Desktop 沙盒 - 开源虚拟桌面使用教程

E2B Desktop 沙盒 - 开源虚拟桌面使用教程

desktop E2B Desktop Sandbox for LLMs. E2B Sandbox with desktop graphical environment that you can connect to any LLM for secure computer use. desktop 项目地址: https://gitcode.com/gh_mirrors/desktop23/desktop

1. 项目介绍

E2B Desktop 沙盒是一个开源的虚拟桌面环境,旨在为用户提供一个安全的计算机使用环境。它基于E2B沙盒技术构建,每个沙盒都是相互隔离的,可以根据需求自定义所需的依赖项。

2. 项目快速启动

获取E2B API密钥

首先,需要在E2B官网注册并获取API密钥。注册后,将API密钥设置为环境变量E2B_API_KEY

安装SDK

根据您的编程语言选择以下安装方式:

Python
pip install e2b-desktop
JavaScript
npm install @e2b/desktop

创建桌面沙盒

下面是创建桌面沙盒的代码示例:

Python
from e2b_desktop import Sandbox

# 基本初始化
desktop = Sandbox()

# 自定义配置
desktop = Sandbox(
    display=":0",      # 自定义显示(默认为:0)
    resolution=(1920, 1080),  # 自定义分辨率
    dpi=96             # 自定义DPI
)
JavaScript
import { Sandbox } from '@e2b/desktop';

// 基本初始化
const desktop = await Sandbox.create();

// 自定义配置
const desktop = await Sandbox.create({
    display: ':0',    // 自定义显示(默认为:0)
    resolution: [1920, 1080],  // 自定义分辨率
    dpi: 96          // 自定义DPI
});

3. 应用案例和最佳实践

以下是一些使用E2B Desktop沙盒的应用案例和最佳实践:

流式传输桌面屏幕

您可以使用以下代码开始屏幕流式传输:

Python
desktop.stream.start()
url = desktop.stream.get_url()
print(url)
desktop.stream.stop()
JavaScript
await desktop.stream.start();
const url = desktop.stream.getUrl();
console.log(url);
await desktop.stream.stop();

鼠标控制

E2B Desktop沙盒允许您控制鼠标:

desktop.double_click()
desktop.left_click(x=100, y=200)
desktop.right_click()
desktop.right_click(x=100, y=200)
desktop.middle_click()
desktop.middle_click(x=100, y=200)
desktop.scroll(10)  # 正数向上滚动,负数向下滚动
desktop.move_mouse(100, 200)  # 移动到x, y坐标
desktop.drag(((100, 100), (200, 200)))  # 使用鼠标拖动
desktop.mouse_press("left")  # 按下鼠标按钮
desktop.mouse_release("left")  # 释放鼠标按钮
await desktop.doubleClick();
await desktop.leftClick(100, 200);
await desktop.rightClick();
await desktop.rightClick(100, 200);
await desktop.middleClick();
await desktop.middleClick(100, 200);
await desktop.scroll(10);  // 正数向上滚动,负数向下滚动
await desktop.moveMouse(100, 200);  // 移动到x, y坐标
await desktop.drag([100, 100], [200, 200]);  // 使用鼠标拖动
await desktop.mousePress("left");  // 按下鼠标按钮
await desktop.mouseRelease("left");  // 释放鼠标按钮

键盘控制

以下是控制键盘的示例代码:

desktop.write("Hello, world!")
desktop.write("Fast typing!", chunk_size=50, delay_in_ms=25)  # 更快地打字
desktop.press("enter")
desktop.press("space")
desktop.press("backspace")
desktop.press(["ctrl", "c"])  # 组合键
await desktop.write('Hello, world!');
await desktop.write('Fast typing!', { chunkSize: 50, delayInMs: 25 });  // 更快地打字
await desktop.press('enter');
await desktop.press('space');
await desktop.press('backspace');
await desktop.press(['ctrl', 'c']);  // 组合键

截图

截取当前屏幕的截图:

image = desktop.screenshot()
with open("screenshot.png", "wb") as f:
    f.write(image)
const image = await desktop.screenshot();
fs.writeFileSync('screenshot.png', image);

4. 典型生态项目

目前,E2B Desktop沙盒的生态项目包括但不限于:

  • 使用E2B沙盒技术的Web应用
  • 集成E2B沙盒的自动化测试工具
  • 基于E2B沙盒的远程桌面解决方案

以上是E2B Desktop沙盒的基本介绍、快速启动方法、应用案例以及典型生态项目。希望这些信息能够帮助您更好地理解和使用E2B Desktop沙盒。

desktop E2B Desktop Sandbox for LLMs. E2B Sandbox with desktop graphical environment that you can connect to any LLM for secure computer use. desktop 项目地址: https://gitcode.com/gh_mirrors/desktop23/desktop

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

纪栋岑Philomena

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值