It seems Riot's policies are part of the problem. There are several things Riot does which continues to encourage the LoL script/bot community that Riot could do something about but clearly has selected not to.
(1) Take pending reports into account when matching games
People are going to start questioning if it is really worth their time to file reports if they continue to be matched against the same script/bot that they just reported less than 24 hours ago. While Riot may not provide any immediate reward of banning the account completely until they get around to it on the next ban wave, they could at least automate the banning from being rematched with the account that is reported by the person that reported it.
(2) Re-think how LeaverBuster works and the method of penalty for LeaverBuster
When a member of the bot community reads that they just need to play 5 games without leaving or being AFK, they read between the lines that if a bot is left running overnight for 5 matches then there is no real penalty for leaving. To further encourage people to seek out alternatives to the penalty is Riot's love for trolling the community with their LeaverBuster policy. They seem to frequently refer to the system as "flawless" and indicate any network problems must be a player issue. Even when Riot does acknowledge network or server issues that are clearly outside of the player's control, they still fail to take responsibility for the resulting LeaverBuster events.
(3) Remove the value in minimalist activity to grind for IP
A script which never kills an AI, never causes any damage to a turret, never locks an altar, etc should not be able to accumulate IP. If you can leave a script that only kills minons to collect a minimal amount of IP per match for thousands of matches, then it eventually builds up to a IP level that people seem willing to pay for. If instead only killing minions automatically results in 0 IP then thousands of matches will also grind up to 0 IP and the value for the script-driven account is eliminated. It shouldn't be hard to find a combination of things that over 90% of real players do which can be automatically checked for as the basis of choose to withhold IP earning at the end of a match.
(4) Ban more frequently and effectively
Part of the problem is that it is cheaper to pay someone from a grind account to get things with the resulting IP than it is to buy them using RP. If someone is able to run 1,000 grinding accounts for a week after which Riot finally gets around to a ban wave that removes 90% of them, the person running the script is still left with 100 accounts to sell.
(5) Change the economics of purchasing IP vs purchasing RP
If Riot isn't going to improve how effective they are at banning accounts that have been grinding for IP, then maybe the should lower the price of RP. If RP is cheap enough then it may not be worth it any longer for people to buy accounts which are populated with IP produced from a script.
(6) Crowdsource script/bot detection
Riot currently seem to leave the system completely manual where player must manually report for a person to eventually do a ban wave. Instead, Riot should provide a way for developers to register for access to an open protocol for Spectator Mode. There should also be protocol by which a developer can submit a script/bot score. If a developer creates an application that is shown to be effective in auto-detecting the current generation of script/bots then maybe Riot could reward them or buy their detection application.
People have been pointing out that the scripts have been adapting to avoid detection. However, from what I can tell, they haven't had to adapt very much. Some of the bots I have been able to tell just from the amount of delay before they start purchasing items at the beginning of the game and what items they purchase. While it is possible for a human to just happen to do the same things at the beginning of a game, there is other telling indicators throughout the match.
None of these scripts are written to try to pass a Turing Test or anything else that show any real effort on the part of the script/bot author. Something as simple as automatically adding a CAPTCHA to future matches after getting a bot report may hinder the current grinding. While some might like to indicate Riot is really making an effort to address the problem, I think it is clear automatic detection would be easy to write if Riot just put a little effort into it. But if it is just that Riot's skills in detection is losing a cat and mouse game, then maybe it is time to get the skills of other developers involve in automating detection.