The server only reads the fish's HP, honestly, when you press the enter button to send the information. If the server was monitoring the fish's HP and saw that it went from a solid 80-100% to 0% in less than 3 seconds, something is up. Many fishing bots will act like they're fighting the fish, but most just have a wait variable of when to reel in. So it acts legit in the wait time, but when it wants to reel in the fish all it does is modify its HP to 0, and reels it in. The server has no idea what just happened either, because it seriously thinks the character was legitimately fighting the fish. It wasn't monitoring the fish's HP.

I know this will not have a permanent fix on fishing bots. But I do know that it throw a lot of them off. SE will probably see a lot of bot fishers if they made this adjustment, if they can make it. I know with the way the game was coded there's a lot that SE wishes they could do, but can't due to the development process.