manually blocking is probably the best route, I don’t think there’s a publicly available program that would be able to accurately comb your list and identify bots and mass delete them.
Your only concern should be too many API requests, too many blocks in one period of time, that kind of thing can kick in some system regulation of your account such as limiting your ability to perform other actions for a period of time.
For this same reason, you’ll just want to block, rather than soft-block (block & unblock to force the account to unfollow you without blocking them permanently).
I don’t know the exact numbers in terms of how many actions in a time period will cause trouble, but if you block about 30 every six hours you’ll probably be fine.
It’s also unheard of for any social media platform to penalise a long block list
Best of luck!
For anyone curious, there are multiple reasons you don’t want bots or spam accounts following you:
1. A better understanding of how your actions are reaching your followers, which having a percentage of them basically be bots would skew those metrics when you look at any analytics.
2. it’s understood that most of these social media platforms will choose to recommend or highlight your account to other users based on various factors that contribute to how much the algorithm thinks your account will be a good match for someone, amongst these factors, sometimes what kind of followers you attract will be factored in, and thusly could negatively affect your account’s ability to reach more people
3. in the off-chance someone looks at your followers, they might see that they’re all bots, and think less of the quality of your account
EDIT: there USED to be a lovely tool for Twitter that could show you who you’re following and who’s following you, and you could then sort by the last activity on those accounts to weed out any that are inactive. ‘mass unfollow ‘ something… might be worth doing a quick search for a tool with similar functionality for instagram