drission 0.1.1

Rust 浏览器自动化库:反检测(Camoufox/Firefox)+ 内置验证码 OCR 与图片滑块缺口距离识别 + 高并发爬虫 / XHR 监听拦截 / 自动过盾,DrissionPage 风格 API。Browser automation in Rust with anti-detect, built-in captcha OCR and slider-gap solving, async high-concurrency crawling.
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
rust-version = "1.85"
name = "drission"
version = "0.1.1"
authors = ["极数本源 (apizero.cn)"]
build = false
exclude = [
    "/dist",
    "/docs",
    "/target",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Rust 浏览器自动化库:反检测(Camoufox/Firefox)+ 内置验证码 OCR 与图片滑块缺口距离识别 + 高并发爬虫 / XHR 监听拦截 / 自动过盾,DrissionPage 风格 API。Browser automation in Rust with anti-detect, built-in captcha OCR and slider-gap solving, async high-concurrency crawling."
homepage = "https://apizero.cn"
documentation = "https://docs.rs/drission"
readme = "README.md"
keywords = [
    "captcha",
    "ocr",
    "anti-detect",
    "automation",
    "scraper",
]
categories = [
    "web-programming",
    "api-bindings",
    "computer-vision",
]
license-file = "LICENSE"
repository = "https://github.com/MageGojo/drission-rs"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
    "--cfg",
    "docsrs",
]

[features]
camoufox = []
cdp = []
default = ["camoufox"]
image = ["dep:image"]
ocr = [
    "dep:image",
    "dep:tract-onnx",
]
slider = []
tract-onnx = ["dep:tract-onnx"]

[lib]
name = "drission"
path = "src/lib.rs"

[[example]]
name = "actions_drag"
path = "examples/actions_drag.rs"

[[example]]
name = "anti_detect"
path = "examples/anti_detect.rs"

[[example]]
name = "apizero_login"
path = "examples/apizero_login.rs"
required-features = ["ocr"]

[[example]]
name = "bilibili_listen_long"
path = "examples/bilibili_listen_long.rs"

[[example]]
name = "cdp_advanced"
path = "examples/cdp_advanced.rs"
required-features = ["cdp"]

[[example]]
name = "cdp_demo"
path = "examples/cdp_demo.rs"
required-features = ["cdp"]

[[example]]
name = "cf_check"
path = "examples/cf_check.rs"

[[example]]
name = "concurrent_listen"
path = "examples/concurrent_listen.rs"

[[example]]
name = "console_listen"
path = "examples/console_listen.rs"

[[example]]
name = "douyin_capture"
path = "examples/douyin_capture.rs"

[[example]]
name = "douyin_dump_env"
path = "examples/douyin_dump_env.rs"

[[example]]
name = "douyin_listen"
path = "examples/douyin_listen.rs"

[[example]]
name = "douyin_listen_long"
path = "examples/douyin_listen_long.rs"

[[example]]
name = "download_manager"
path = "examples/download_manager.rs"

[[example]]
name = "dump_env_fingerprint"
path = "examples/dump_env_fingerprint.rs"

[[example]]
name = "dx_slide"
path = "examples/dx_slide.rs"
required-features = ["slider"]

[[example]]
name = "ele_extras"
path = "examples/ele_extras.rs"

[[example]]
name = "exa_cf"
path = "examples/exa_cf.rs"

[[example]]
name = "extras_demo"
path = "examples/extras_demo.rs"

[[example]]
name = "fetch_browser"
path = "examples/fetch_browser.rs"

[[example]]
name = "file_upload"
path = "examples/file_upload.rs"

[[example]]
name = "form_fill"
path = "examples/form_fill.rs"

[[example]]
name = "form_input"
path = "examples/form_input.rs"

[[example]]
name = "geetest_diag"
path = "examples/geetest_diag.rs"

[[example]]
name = "geetest_probe"
path = "examples/geetest_probe.rs"

[[example]]
name = "geetest_slide"
path = "examples/geetest_slide.rs"
required-features = ["slider"]

[[example]]
name = "intercept"
path = "examples/intercept.rs"

[[example]]
name = "intercept_window"
path = "examples/intercept_window.rs"

[[example]]
name = "listen_handle"
path = "examples/listen_handle.rs"

[[example]]
name = "ocr_captcha"
path = "examples/ocr_captcha.rs"
required-features = ["ocr"]

[[example]]
name = "ocr_probe"
path = "examples/ocr_probe.rs"

[[example]]
name = "page_basics"
path = "examples/page_basics.rs"

[[example]]
name = "page_extras"
path = "examples/page_extras.rs"

[[example]]
name = "pool_crawl"
path = "examples/pool_crawl.rs"

[[example]]
name = "proxy_health"
path = "examples/proxy_health.rs"

[[example]]
name = "quickstart"
path = "examples/quickstart.rs"

[[example]]
name = "relative_shadow"
path = "examples/relative_shadow.rs"

[[example]]
name = "screencast"
path = "examples/screencast.rs"

[[example]]
name = "session_mode"
path = "examples/session_mode.rs"

[[example]]
name = "slider_local"
path = "examples/slider_local.rs"
required-features = ["slider"]

[[example]]
name = "stealth_check"
path = "examples/stealth_check.rs"

[[example]]
name = "web_page_scrape"
path = "examples/web_page_scrape.rs"

[[example]]
name = "win_bilibili_test"
path = "examples/win_bilibili_test.rs"

[[example]]
name = "win_cf_test"
path = "examples/win_cf_test.rs"

[[example]]
name = "win_diag"
path = "examples/win_diag.rs"

[[example]]
name = "win_smoke"
path = "examples/win_smoke.rs"

[[example]]
name = "ws_connect"
path = "examples/ws_connect.rs"

[[example]]
name = "ws_listen"
path = "examples/ws_listen.rs"

[[test]]
name = "public_api"
path = "tests/public_api.rs"

[[bench]]
name = "parsing"
path = "benches/parsing.rs"
harness = false

[dependencies.async-trait]
version = "0.1.89"

[dependencies.bytes]
version = "1.12.0"

[dependencies.dirs]
version = "6.0.0"

[dependencies.ego-tree]
version = "0.11"

[dependencies.futures-util]
version = "0.3.32"

[dependencies.image]
version = "0.25.10"
features = [
    "png",
    "jpeg",
]
optional = true
default-features = false

[dependencies.libc]
version = "0.2.186"

[dependencies.os_pipe]
version = "1.2.3"
features = ["io_safety"]

[dependencies.reqwest]
version = "0.13.4"
features = [
    "json",
    "stream",
    "socks",
]

[dependencies.scraper]
version = "0.27.0"

[dependencies.serde]
version = "1.0.228"
features = ["derive"]

[dependencies.serde_json]
version = "1.0.150"

[dependencies.thiserror]
version = "2.0.18"

[dependencies.tokio]
version = "1.52.3"
features = ["full"]

[dependencies.tokio-tungstenite]
version = "0.29.0"

[dependencies.tracing]
version = "0.1.44"

[dependencies.tract-onnx]
version = "0.23.3"
optional = true

[dependencies.zip]
version = "8.6.0"

[dev-dependencies.criterion]
version = "0.7.0"

[dev-dependencies.tracing-subscriber]
version = "0.3.23"
features = ["env-filter"]

[target."cfg(unix)".dependencies.command-fds]
version = "0.3.3"
features = ["tokio"]

[target."cfg(windows)".dependencies.windows-sys]
version = "0.61"
features = [
    "Win32_Foundation",
    "Win32_Security",
    "Win32_Storage_FileSystem",
    "Win32_System_Threading",
]