Files
2026-08-13 18:44:15 +02:00

56 lines
2.6 KiB
Python

"""Configuration for the vw-eu-data-act-exporter."""
# --- HTTP Server -------------------------------------------------------
hostName = "127.0.0.1"
serverPort = 9109
# Prefix for all exported Prometheus metrics.
# Must be a valid Prometheus metric name prefix: [a-zA-Z_:][a-zA-Z0-9_:]*
exporter_prefix = "vw_eu_data_act_exporter_"
# --- VW Group EU Data Act Portal Account --------------------------------
# https://eu-data-act.drivesomethinggreater.com/
# All VINs configured below must belong to this account.
vw_account = {
"email": "you@example.com",
"password": "changeme",
}
# --- Vehicles --------------------------------------------------------------
# List of vehicle VINs to scrape (17 characters).
vins = [
"AAABBCCEEF75854df",
]
# --- HTTP Client -------------------------------------------------------------
# Pool of User-Agent strings. A random entry is picked for each login
# session against the portal.
user_agents = [
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",
"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:121.0) Gecko/20100101 Firefox/121.0",
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.2 Safari/605.1.15",
"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",
]
# --- Scrape behavior ---------------------------------------------------------
# Interval in minutes at which each VIN is polled in the background.
# The portal only produces new "continuous" data records roughly every
# ~15 minutes - a shorter interval will not yield fresher data, but will
# increase the login frequency against the VW account.
scrape_interval_minutes = 15
# --- Raw JSON persistence ---------------------------------------------------
# Optional: write the JSON extracted from every downloaded dataset to disk
# (one file per VIN per scrape), e.g. to inspect the portal's payload while
# improving the field mapping in vw-eu-data-act-exporter.py. Also extracts
# and persists the JSON from "_no_content_found.zip" placeholders, if they
# carry one. ZIP files themselves are never written to disk. Disabled by
# default, since the exporter is designed to be stateless (see README.md).
persist_raw_json = False
# Under the systemd unit enable ProtectSystem=strict if exporting of jsons is not needed
persist_raw_json_dir = "raw_json"
# --- Logging ---------------------------------------------------------------
log_level = "INFO"