Python Script

Python Data Export

CLI tool for bulk-exporting firearms, manufacturers, calibers, or categories to CSV and JSON. Handles pagination, filtering, and output formatting.

gunspec-export.py

Requirements

# Python 3.9+ required pip install requests

Quick Start

1

Download the file using the button above

2

Run it:

python gunspec-export.py --api-key test_key --base-url http://localhost:8787 --resource firearms --format csv
3

Output: firearms.csv with all firearms, paginated automatically

CLI Options

FlagDefaultDescription
--api-key(required)Your GunSpec API key
--base-urlAuto-detectedAPI base URL
--resourcefirearmsfirearms, manufacturers, calibers, or categories
--formatcsvcsv or json
--outputresource.formatOutput file path
--filter(none)Key=value filter, repeatable

Examples

# Export all firearms as CSV python gunspec-export.py --api-key test_key \ --base-url http://localhost:8787 \ --resource firearms --format csv # Export only Colt firearms as JSON python gunspec-export.py --api-key test_key \ --base-url http://localhost:8787 \ --resource firearms --format json \ --filter manufacturer=colt-defense # Export calibers python gunspec-export.py --api-key test_key \ --base-url http://localhost:8787 \ --resource calibers --format csv # Export to a specific file python gunspec-export.py --api-key test_key \ --base-url http://localhost:8787 \ --resource manufacturers \ --output data/manufacturers.csv

Pagination: The script fetches 50 records per page automatically. Progress is printed to stderr so you can pipe stdout to a file or another command.

Back to Assets