Files
WebScraper/Cargo.toml
2026-01-12 23:03:01 +01:00

69 lines
1.9 KiB
TOML

[package]
name = "web_scraper"
version = "0.1.0"
edition = "2024"
authors = ["Your Name <you@example.com>"]
description = "High-impact economic & corporate earnings data collector for short-event backtesting (overnight/weekend gaps)"
license = "MIT OR Apache-2.0"
repository = "https://github.com/yourname/event_backtest_engine"
keywords = ["finance", "earnings", "economic-calendar", "backtesting", "quant"]
categories = ["finance", "data-structures", "asynchronous"]
# ===================================================================
# Dependencies
# ===================================================================
[dependencies]
# Async runtime
tokio = { version = "1.38", features = ["full"] }
# Web scraping & HTTP
reqwest = { version = "0.12", features = ["json", "gzip", "brotli", "deflate", "blocking", "socks", "cookies"] }
scraper = "0.19" # HTML parsing for Yahoo earnings pages
fantoccini = { version = "0.20", features = ["rustls-tls"] } # Headless Chrome for finanzen.net
yfinance-rs = "0.7.2"
url = "2.5.7"
urlencoding = "2.1"
# Serialization
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
csv = "1.3"
zip = "6.0.0"
flate2 = "1.1.5"
# Formatting
regex = "1.12.2"
walkdir = "2"
# Generating
rand = "0.9.2"
# Environment handling
dotenvy = "0.15"
toml = "0.9.8"
# Date & time
chrono = { version = "0.4", features = ["serde"] }
# Error handling
anyhow = "1.0"
# Logging (optional but recommended)
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["fmt", "env-filter"] }
once_cell = "1.21.3"
# Parallel processing (for batch tickers)
futures = "0.3"
rayon = "1.10" # optional: for parallel price downloads
# Web server for dashboard
axum = { version = "0.7", features = ["ws"] }
tokio-tungstenite = "0.21" # For WebSocket support
# tests
#tempfile = "3.24.0"
# data integrity
sha2 = "0.10.9"
uuid = { version = "1.0", features = ["v4", "v7"] }