Skip to main content

Module browser

Module browser 

Source
Available on crate feature camoufox only.
Expand description

Camoufox / Firefox(Juggler)后端 + 全部高层浏览器能力。仅 --features camoufox。 高层浏览器 API(DrissionPage 风格)。

  • [Browser][]:启动 / 退出 / 标签管理。每个标签是一个独立 BrowserContext(cookie 隔离)。
  • [tab::Tab][]:页面操作(get/run_js/ele/cookies/listen…)。
  • [element::Element][]:元素操作(click/input/text/attr…)。
  • [listener::DataPacket][]:网络监听数据包。

Re-exports§

pub use crate::static_element;
pub use crate::keys::KeyInput;
pub use crate::keys::Keys;
pub use crate::static_element::StaticElement;
pub use actions::Actions;
pub use actions::MouseButton;
pub use console::Console;
pub use console::ConsoleData;
pub use console::ConsoleFilter;
pub use console::ConsoleSteps;
pub use download::DownloadMission;
pub use download::DownloadState;
pub use download::Downloads;
pub use dump_env::EnvDump;
pub use dump_env::EnvDumper;
pub use dump_env::EnvProbe;
pub use dump_env::EnvScope;
pub use dump_env::EnvTarget;
pub use element::Element;
pub use element::ElementRect;
pub use element::ElementWait;
pub use frame::Frame;
pub use handles::Intercept;
pub use handles::Listen;
pub use handles::Scroll;
pub use handles::SetTab;
pub use handles::Wait;
pub use handles::Window;
pub use interceptor::InterceptedRequest;
pub use interceptor::ResumeOptions;
pub use listener::DataPacket;
pub use listener::ListenFilter;
pub use listener::RequestData;
pub use listener::ResponseData;
pub use screencast::Screencast;
pub use screencast::ScreencastMode;
pub use serve::BrowserServer;
pub use shadow::ShadowRoot;
pub use slider::GapMethod;slider
pub use slider::ImageSource;slider
pub use slider::SliderConfig;slider
pub use slider::SliderGap;slider
pub use slider::SliderResult;slider
pub use slider::SuccessCheck;slider
pub use storage::OriginStorage;
pub use storage::StorageState;
pub use tab::ContextOverride;
pub use tab::Cookie;
pub use tab::CookieParam;
pub use tab::DialogInfo;
pub use tab::DownloadInfo;
pub use tab::GetOptions;
pub use tab::ImageFormat;
pub use tab::ListenStream;
pub use tab::LoadMode;
pub use tab::PageRect;
pub use tab::ShotOpts;
pub use tab::Tab;
pub use websocket::WsDirection;
pub use websocket::WsFilter;
pub use websocket::WsListener;
pub use websocket::WsMessage;
pub use websocket::WsSocket;
pub use websocket::WsSteps;

Modules§

actions
动作链 Actions:对应 DrissionPage 的 tab.actions / Selenium ActionChains。
cloudflare
Cloudflare 挑战自动通过(对标“过盾“诉求)。
console
控制台监听(对应 DrissionPage 的 tab.console)。
download
下载管理(Downloads,对标 DrissionPage 的 DownloadManager)。
dump_env
通用吐环境 —— Camoufox 后端胶水。后端无关的全部逻辑(探针/env.js/导出工程/同构双跑验证 + canvas/webgl/audio/字体/像素/WebRTC/plugins 指纹回放 + 反 hook + 签名 sink 定位)见 crate::envkit
element
元素 Element:对应 DrissionPage 的元素对象。
frame
子框架 Frame:对应 DrissionPage 的 iframe/frame 对象。
handles
DrissionPage 风格的“句柄对象“:把一组相关操作收敛到 tab.wait.* / tab.scroll.* / tab.set.*
interceptor
请求拦截(对 tab.listen 监听之外的增强:放行 / 改写 / 伪造 / 中止)。
listener
网络监听(对应 DrissionPage 的 tab.listen)。
screencast
录像 Screencast:对标 DrissionPage 的 tab.screencast
serve
浏览器 WS 服务端:启动 Camoufox(走 fd3/fd4 管道),把原始 Juggler 协议桥接成一个 WebSocket 端点,供 Browser::connect 或其它进程/机器接入。
shadow
Shadow DOM 根 ShadowRoot:对应 DrissionPage 的 ele.shadow_root
sliderslider
通用滑块验证码求解(drission-rs 库能力,不限极验)。
storage
登录态 / 会话状态持久化(对标 Playwright storageState): 把 cookie + localStorage + sessionStorage 一并导出/导入,跨进程或重启复用登录态。
tab
标签页 Tab:对应 DrissionPage 的 tab/page 对象。
websocket
WebSocket 帧监听(drission-rs 增强;DrissionPage 无对应原生 API)。

Structs§

Browser
一个浏览器实例。