Have a Pokemon with the move called Mean Look, which Golbat is a primary choice to have this move. The move Mean Look prevents the Pokemon from fleeing or switching out during a battle and can be very useful in a battle like this. You cannot stop Mesprit from permanently fleeing, however. It is recommended to bring a Pokemon with any sleep status moves like: Hypnosis, Sleep Powder, Yawn, etc. to further the effect.
Chat with our AI personalities
You can use a Move like Scary Face...
You could just use pokesav?
It will keep fleeing unless you have a Pokemon with Mean Look or something like that so it won't escape. Try catching a wild Golbat. The same is for Mespirit.
you need a wobbufet or wynaut because they have shadow tag so put that Pokemon in the front of your party or you can get a octillery if your trying to catch a fleeing Pokemon
try using the move 'mean look' on it so it cant escape.