UMass Amherst, DACSS 758 · 2026
Campus Safety Alerts Dataset
Every university publishes its crime alerts differently, so I wrote a scraper for each of ten schools and combined the results into one dataset you can compare across campuses.
- 519safety documents from 10 universities
Every university publishes safety notices in its own way, so a single crawler doesn't work. I wrote a separate scraper for each of ten schools: ASU, Ohio State, Penn State, UC Berkeley, UMass Amherst, UNC Chapel Hill, UT Austin, UW Madison, University of Florida and University of Washington.
The dataset has 519 documents: 473 individual alert notices, 32 from alert feeds, 11 annual security reports and 3 crime logs. 506 came from web pages and 13 from PDFs. Some campuses don't keep a public archive of alerts, so for those the scraper falls back to the annual security report, and a record_family column marks which kind each row is so they can be analyzed separately.
It also had to be dependable. The scraper retries failed requests, waits between pages so it doesn't overload university servers, and uses cloudscraper for sites that block ordinary requests. Every row stores the source URL, the archive URL, a content hash and a timestamp, so any number taken from the dataset can be traced back to the page it came from.
| Record family | Documents |
|---|---|
| Alert notices | 473 |
| Alert feeds | 32 |
| Annual security reports | 11 |
| Crime logs | 3 |
Tools & methods
- Python
- BeautifulSoup
- pdfminer.six
- cloudscraper
- requests