scrapling-browser 0.2.0

Browser automation with anti-detection for scrapling
Documentation

Build #3143045 2026-04-15 16:48:28

# rustc version rustc 1.97.0-nightly (a5c825cd8 2026-04-14)

# docs.rs version docsrs 0.0.0 (15f7e1e9dfac4fc5b7cc4abfd7682239002ba909 2026-04-08 )

# build log [INFO] running `Command { std: "docker" "create" "-v" "/home/cratesfyi/workspace-builder4/builds/scrapling-browser-0.2.0/target:/opt/rustwide/target:rw,Z" "-v" "/home/cratesfyi/workspace-builder4/builds/scrapling-browser-0.2.0/source:/opt/rustwide/workdir:ro,Z" "-v" "/home/cratesfyi/workspace-builder4/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/home/cratesfyi/workspace-builder4/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "6442450944" "--cpuset-cpus" "20-23" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "sleep" "infinity", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 7ff96cf2511eb2403f7eba80515c17be55c9ad0909328ef2fd9a337d7b1503bd [INFO] running `Command { std: "docker" "start" "7ff96cf2511eb2403f7eba80515c17be55c9ad0909328ef2fd9a337d7b1503bd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "DOCS_RS=1" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "--user" "1001:1001" "7ff96cf2511eb2403f7eba80515c17be55c9ad0909328ef2fd9a337d7b1503bd" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "rustdoc" "--lib" "-Zrustdoc-map" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--emit=invocation-specific\", \"--resource-suffix\", \"-20260414-1.97.0-nightly-a5c825cd8\", \"--static-root-path\", \"/-/rustdoc.static/\", \"--cap-lints\", \"warn\", \"--extern-html-root-takes-precedence\"]" "--offline" "-Zunstable-options" "--config=doc.extern-map.registries.crates-io=\"https://docs.rs/{pkg_name}/{version}/x86_64-unknown-linux-gnu\"" "-Zrustdoc-scrape-examples" "-j4" "--target" "x86_64-unknown-linux-gnu", kill_on_drop: false }` [INFO] [stderr] warning: target filter specified, but no targets matched; this is a no-op [INFO] [stderr] Documenting scrapling-browser v0.2.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unresolved link to `BrowserConfig::block_ads` [INFO] [stderr] --> src/ad_domains.rs:5:12 [INFO] [stderr] | [INFO] [stderr] 5 | //! When [`BrowserConfig::block_ads`] is set to `true`, the [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ no item named `BrowserConfig` in scope [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `BrowserConfig::validate` [INFO] [stderr] --> src/ad_domains.rs:6:7 [INFO] [stderr] | [INFO] [stderr] 6 | //! [`BrowserConfig::validate`] method merges every entry in this list into the [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ no item named `BrowserConfig` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `intercept::is_domain_blocked` [INFO] [stderr] --> src/ad_domains.rs:12:7 [INFO] [stderr] | [INFO] [stderr] 12 | //! [`intercept::is_domain_blocked`]), blocking `"doubleclick.net"` also blocks [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `intercept` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `BrowserConfig` [INFO] [stderr] --> src/ad_domains.rs:16:33 [INFO] [stderr] | [INFO] [stderr] 16 | //! `block_ads: true` on your [`BrowserConfig`] and the rest is handled automatically. [INFO] [stderr] | ^^^^^^^^^^^^^ no item named `BrowserConfig` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `BrowserConfig::blocked_domains` [INFO] [stderr] --> src/ad_domains.rs:21:12 [INFO] [stderr] | [INFO] [stderr] 21 | /// into [`BrowserConfig::blocked_domains`] during validation when `block_ads` is [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `BrowserConfig` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `constants::EXTRA_RESOURCES` [INFO] [stderr] --> src/config.rs:70:57 [INFO] [stderr] | [INFO] [stderr] 70 | /// The exact list of blocked types is defined in [`constants::EXTRA_RESOURCES`]. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `constants` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `intercept::is_domain_blocked` [INFO] [stderr] --> src/config.rs:169:40 [INFO] [stderr] | [INFO] [stderr] 169 | /// `"sub.ads.example.com"`. See [`intercept::is_domain_blocked`] for details. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `intercept` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `DynamicSession::new` [INFO] [stderr] --> src/config.rs:294:60 [INFO] [stderr] | [INFO] [stderr] 294 | /// You do not usually need to call this yourself -- [`DynamicSession::new`] and [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ no item named `DynamicSession` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `StealthySession::new` [INFO] [stderr] --> src/config.rs:295:11 [INFO] [stderr] | [INFO] [stderr] 295 | /// [`StealthySession::new`] call it automatically during construction. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ no item named `StealthySession` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `engine::build_launch_options` [INFO] [stderr] --> src/config.rs:415:11 [INFO] [stderr] | [INFO] [stderr] 415 | /// [`engine::build_launch_options`] and control WebRTC, canvas, and WebGL behaviour. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `engine` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `DynamicSession::fetch` [INFO] [stderr] --> src/config.rs:585:48 [INFO] [stderr] | [INFO] [stderr] 585 | /// `BrowserConfig`. Pass a `FetchParams` to [`DynamicSession::fetch`] or [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ no item named `DynamicSession` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `StealthySession::fetch` [INFO] [stderr] --> src/config.rs:586:7 [INFO] [stderr] | [INFO] [stderr] 586 | /// [`StealthySession::fetch`] to override specific settings for a single navigation [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ no item named `StealthySession` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `BrowserConfig::disable_resources` [INFO] [stderr] --> src/constants.rs:7:22 [INFO] [stderr] | [INFO] [stderr] 7 | //! blocked when [`BrowserConfig::disable_resources`] is `true`. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `BrowserConfig` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `engine::build_launch_options` [INFO] [stderr] --> src/constants.rs:20:45 [INFO] [stderr] | [INFO] [stderr] 20 | //! sanitise the argument list for use in [`engine::build_launch_options`]. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `engine` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `intercept::should_block_resource` [INFO] [stderr] --> src/constants.rs:24:10 [INFO] [stderr] | [INFO] [stderr] 24 | /// in [`intercept::should_block_resource`]. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `intercept` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `DynamicSession::start` [INFO] [stderr] --> src/engine.rs:15:59 [INFO] [stderr] | [INFO] [stderr] 15 | //! You typically do not call these functions directly; [`DynamicSession::start`] and [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ no item named `DynamicSession` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `StealthySession::start` [INFO] [stderr] --> src/engine.rs:16:7 [INFO] [stderr] | [INFO] [stderr] 16 | //! [`StealthySession::start`] use them internally. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ no item named `StealthySession` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `StealthConfig::extra_stealth_args` [INFO] [stderr] --> src/engine.rs:30:43 [INFO] [stderr] | [INFO] [stderr] 30 | /// additional stealth args produced by [`StealthConfig::extra_stealth_args`]. It then [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `StealthConfig` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `BrowserConfig` [INFO] [stderr] --> src/error.rs:40:64 [INFO] [stderr] | [INFO] [stderr] 40 | /// within `timeout_ms`. You can increase the timeout in [`BrowserConfig`] or the [INFO] [stderr] | ^^^^^^^^^^^^^ no item named `BrowserConfig` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `FetchParams` [INFO] [stderr] --> src/error.rs:41:23 [INFO] [stderr] | [INFO] [stderr] 41 | /// per-request [`FetchParams`] to give the page more time to render. [INFO] [stderr] | ^^^^^^^^^^^ no item named `FetchParams` in scope [INFO] [stderr] | [INFO] [stderr] = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]` [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `BrowserConfig::validate` [INFO] [stderr] --> src/error.rs:53:25 [INFO] [stderr] | [INFO] [stderr] 53 | /// Raised during [`BrowserConfig::validate`] or [`StealthConfig::validate`] when [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ no item named `BrowserConfig` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `StealthConfig::validate` [INFO] [stderr] --> src/error.rs:53:56 [INFO] [stderr] | [INFO] [stderr] 53 | /// Raised during [`BrowserConfig::validate`] or [`StealthConfig::validate`] when [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ no item named `StealthConfig` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `constants::STEALTH_ARGS` [INFO] [stderr] --> src/fetcher.rs:413:16 [INFO] [stderr] | [INFO] [stderr] 413 | /// full [`constants::STEALTH_ARGS`] list. You must call this before calling [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ no item named `constants` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `constants::EXTRA_RESOURCES` [INFO] [stderr] --> src/intercept.rs:10:10 [INFO] [stderr] | [INFO] [stderr] 10 | //! [`constants::EXTRA_RESOURCES`]. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `constants` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `constants::EXTRA_RESOURCES` [INFO] [stderr] --> src/intercept.rs:26:54 [INFO] [stderr] | [INFO] [stderr] 26 | /// it matches `resource_type` against the list in [`constants::EXTRA_RESOURCES`], [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `constants` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `BrowserError::PagePool` [INFO] [stderr] --> src/page_pool.rs:91:11 [INFO] [stderr] | [INFO] [stderr] 91 | /// [`BrowserError::PagePool`] when the number of registered pages already [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ no item named `BrowserError` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `BrowserConfig::max_pages` [INFO] [stderr] --> src/page_pool.rs:185:57 [INFO] [stderr] | [INFO] [stderr] 185 | /// Maximum capacity of the pool as configured in [`BrowserConfig::max_pages`]. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ no item named `BrowserConfig` in scope [INFO] [stderr] [INFO] [stderr] warning: unresolved link to `BrowserConfig::capture_xhr` [INFO] [stderr] --> src/response_factory.rs:126:12 [INFO] [stderr] | [INFO] [stderr] 126 | /// When [`BrowserConfig::capture_xhr`] is set with a URL pattern, matching [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `BrowserConfig` in scope [INFO] [stderr] [INFO] [stderr] warning: `scrapling-browser` (lib doc) generated 28 warnings [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.69s [INFO] [stderr] Generated /opt/rustwide/target/x86_64-unknown-linux-gnu/doc/scrapling_browser/index.html [INFO] running `Command { std: "docker" "stop" "-t" "1" "7ff96cf2511eb2403f7eba80515c17be55c9ad0909328ef2fd9a337d7b1503bd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "7ff96cf2511eb2403f7eba80515c17be55c9ad0909328ef2fd9a337d7b1503bd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7ff96cf2511eb2403f7eba80515c17be55c9ad0909328ef2fd9a337d7b1503bd", kill_on_drop: false }` [INFO] [stdout] 7ff96cf2511eb2403f7eba80515c17be55c9ad0909328ef2fd9a337d7b1503bd