Skip to main content
← Blog

I Built a Bot to Change My Instagram DP So I Don't Have To

Feb 15, 2024

3 min read

View on GitHub

Okay, so picture this: It's 2 AM, I'm scrolling through my camera roll, and I realize my Instagram DP has been the same blurry selfie from three months ago. Peak procrastination energy, right? But instead of just... you know... changing it like a normal person, my brain went: "What if I never had to think about this again?"

That's how I ended up spending 6 hours building something that saves me 30 seconds. Make it make sense.

Instagram DP Bot Demo

^ this is how it works in 100x speed

The Plan

Instead of rotating through 47 curated selfies like some kind of content creator, I took one random photo and made 11 versions of it — same face, different background colors. Same energy as buying the same shirt in 12 different colors, but make it cloud-native.

The stack: Python, instagrapi (genuinely carrying the whole project), and my $100 Azure student credit, which I deployed with more confidence than I had any right to have.

Pro tip: instagrapi sessions save your login state so you don’t get rate-limited or asked for 2FA every time. Learned that the hard way at 4AM.

Instead of changing photos every hour like a maniac, I added random delays — 1700 to 1900 seconds between changes — because Instagram's algorithm is watching 👀, and I didn't want my account yeeted into the shadow realm for looking too bot-like. Gotta keep it natural.

The Part Where It Broke

First day: flawless. I felt like a tech genius watching my DP change while I was probably failing an exam.

Second day: existential crisis. Turns out Instagram doesn't love it when you hit their API too aggressively. Had to add retry logic, because apparently my bot needed therapy:

python
try:    self.change_dp()except Exception as e:    print(f"Oops, we faked up: {e}")    time.sleep(10000)  # Touch some grass, then try again    self.retry()

It's been running fine ever since. Before the bot: same boring DP for months, friends telling me to update my pic. After: new background color every ~45 minutes, friends asking how my pic is always different. I have not told them. The mystique is part of the brand.

Azure deployment did burn through my student credits faster than expected — which is why I eventually migrated the whole thing to GitHub Actions. But that's a story for another post.

Just use this responsibly. Instagram automation isn't exactly in their ToS fan club, and getting banned over a DP bot is not a flex.

The code is on GitHub. Variable names and questionable life choices included, free of charge.


Built with Python, powered by procrastination, and overnight engineering...