Special Programs Send Student Envelope... 3080 Zip Files On The Wall

2 views
Skip to first unread message

Jared Grieve

unread,
Apr 21, 2026, 9:36:08 PM (8 days ago) Apr 21
to 'Kyle Schneider' via AK PSUG
First off, thanks Nathan for sharing your videos. I reached out to Embrace thinking maybe they'd worked up some documentation, they're-shared your videos.

We've had PowerSchool since 2008 so I expected a decent number of students, I did not expect 3080. We discussed how far back we should go and ultimately channeled our inner hoarder and decided "Better to have and not need than need and not have." So I went through the steps and got to the part where there is inconveniently no Download All button and got cracking at it only to quickly go cross eyed.

There is probably a better way to do this but in case not, here is how I nabbed 3080 files in about 2 hours automagically. I feel like I'm behind on this quest and have no idea what's in store next but maybe this is helpful, or maybe I'm a bonehead and missed the email about the easy button. ¯\_(ツ)_/¯

  • Open Chrome Settings > Sites & Settings > Advanced Permissions > Automatic Downloads 
(Set to Sites can ask and added https://pac.specialeducation.powerschool.com to the Allowed list)

  • Chrome Settings > Downloads 
(Set a default download location for these files cause you probably want them somewhere other than your desktop)

Once presented with the giant list O' Student links:

Right click on the page and click Inspect
Click Console
Type "allow pasting" without the quotes of course and hit enter.

Pasting script off the internet is of course a cardinal sin so trust but verify as always...

If you like it and feel good about it... paste this and hit enter... it looks for the download image and clicks them all and auto downloads all the files till its done.

const icons = document.querySelectorAll('img[src*="download"]');
let i = 0;

async function clickNext() {
  if (i >= icons.length) {
    console.log("All downloads triggered");
    return;
  }

  const clickable = icons[i].closest('a, button');
  if (clickable) {
    clickable.click();
    console.log(`Clicked ${i + 1} / ${icons.length}`);
  }

  i++;
  setTimeout(clickNext, 1500); // adjust speed here
}

clickNext();

--

Jared Grieve

Network Technician

Craig City School District

Phone: 907-826-2274 x2004

Fax: 907-826-3016

jgr...@craigschools.com


Sent with Shift

Nathan McArthur

unread,
Apr 22, 2026, 12:31:03 PM (7 days ago) Apr 22
to ak-...@googlegroups.com
Love this. Great code! It's hilarious they re-shared my videos. LOL!

Best,

Nathan McArthur
EdTech/PowerSchool/Homeschool Coordinator
Lake and Peninsula School District
Alaska


--
You received this message because you are subscribed to the Google Groups "AK PSUG" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ak-psug+u...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/ak-psug/CAJWs%2By3ddKzGxztOJjAN33JTMjP8wY%3Dzu08bfZiBUWHUNgBD9A%40mail.gmail.com.

Jared Grieve

unread,
Apr 22, 2026, 12:49:55 PM (7 days ago) Apr 22
to ak-...@googlegroups.com
They like to refer to their help videos like genres in their training, I wonder which one they'll put your videos in, maybe mystery / suspense. I only wish I had binge watched the entire series before following along at home. I'm sure you mentioned it in previous emails but today I learned part 2 - Add missing documents and inactive students means I need to redo this. Woops.

Sent with Shift


Reply all
Reply to author
Forward
0 new messages