This Python script automatically fetches the latest signature count from the House Clerk's official discharge petition page and updates the data/signers.json file.
python3 update_signatures.py- Fetches the HTML from https://clerk.house.gov/DischargePetition/2025090209
- Parses all member signatures from the table
- Updates
data/signers.jsonwith:- Total signature count (currently 215)
- Individual signer details (name, party, state, district)
- Timestamp of last update
- Shows breakdown by party (e.g., "4 Rs, 211 Ds")
- Python 3.6+
- No external dependencies (uses only standard library)
To run automatically every hour:
# Add to crontab
0 * * * * cd /path/to/epstein-petition-tracker && python3 update_signatures.pyFetching discharge petition data from https://clerk.house.gov/DischargePetition/2025090209...
Parsing signature data...
Found 215 total signatures
Breakdown: 4 Rs, 211 Ds
Summary:
Total signatures: 215
Signatures needed: 3
Individual signers found: 215
Updating JSON file...
✓ Update complete!
Current status:
Total signatures: 215
Signatures remaining: 3
Last updated: 2025-09-04T15:02:02.744882
- The script is resilient to page format changes and will save debug HTML if parsing fails
- All new signers are automatically added with proper attribution
- The website's JavaScript (
tracker.js) will automatically load the latest counts fromsigners.json