[package]
edition = "2024"
rust-version = "1.85"
name = "drission"
version = "0.1.0"
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"
[features]
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 = "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 = "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 = "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"
[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",
]
[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.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",
]