APOC Data
Alaska campaign financial disclosure data from the Alaska Public Offices Commission.
This scrapes the CSV files from the APOC website once a day and uploads them to this repo's releases.
Download a Recent Scrape
You can download the daily-scraped CSVs from the GitHub releases (this is what most users want).
From the Web Interface
Browse from this repo's releases.
From the CLI
Using uv's uvx:
uvx apoc-data release download # downloads all files from the latest release to ./downloads/ folder
uvx apoc-data release download "20260702-125614" --destination mydownloads/ # specify explicitly
uvx apoc-data asset download debt.csv --destination apoc_debt.csv # download a single file
uvx apoc-data release list # see what releases are available
uvx apoc-data asset list --json # see what files are in the latest release, as JSON
Or, you can download these CSVs directly using the direct URLs from the releases page using curl, pandas, ibis, whatever!
curl -L https://github.com/NickCrews/apoc-data/releases/latest/download/candidate_registration.csv > candidate_registration.csv # get latest
curl -L https://github.com/NickCrews/apoc-data/releases/download/20240716-025636/candidate_registration.csv > candidate_registration.csv # or a different url pattern for specific releases
# query directly using duckdb
duckdb -c "SELECT count(*) FROM 'https://github.com/NickCrews/apoc-data/releases/latest/download/candidate_registration.csv'"
duckdb -c "SELECT count(*) FROM 'https://github.com/NickCrews/apoc-data/releases/download/20240716-025636/candidate_registration.csv'"
From python
We provide a python API too. uv add apoc-data and then
from apoc_data.releases import asset_download, release_download, release_list
release_list() # all releases, newest first, as `Release` objects
release_download(destination="downloads/") # all files from the latest release
asset_download("debt.csv", destination="apoc_debt.csv") # a single file
Scrape Yourself
You can also scrape fresh data directly from the APOC website
(requires the scrape extra for playwright):
uvx "apoc-data[scrape]" scrape --directory scraped/
There is also a python API. Read the source code.
Dev Notes
Create venv and install dev deps:
uv sync
scrape:
uv run apoc-data scrape --directory downloads --no-headless
Metadata
Release files for apoc-data 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| apoc_data-0.2.0.tar.gz | 10.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| apoc_data-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 24.7 kB
Release files / apoc_data-0.2.0.tar.gz
| Download URL | apoc_data-0.2.0.tar.gz |
|---|---|
| Size | 10.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
47741943b8a3cb230a370926bfec4a380bd2448fecac50671750beda107bfc12
|
|
BLAKE2b-256 checksum How to use checksums |
8c63f24c06466179dbbedc4e64b47e064dbe6f6918ae50c394c4385f4b8b89e6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.1 {"installer":{"name":"uv","version":"0.11.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / apoc_data-0.2.0-py3-none-any.whl
| Download URL | apoc_data-0.2.0-py3-none-any.whl |
|---|---|
| Size | 14.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e794c35a3f4522d0e84f6250e72789e8794a1ce0f8de62f00321a7b2a8ce455e
|
|
BLAKE2b-256 checksum How to use checksums |
ab3247e5066ec543afd39cfd65b87f0de21be49dec431c9af35f90cb31e80cb0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.1 {"installer":{"name":"uv","version":"0.11.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|