I cup my hand over them and position a finger that I want them to perch on just in front of their "chest", slowly working my finger toward them. This causes them to take a few steps and in the process, transfer to my hand. (it's a bit similar to getting a bird to step onto your finger) Keeping your fingers in a loose cage over them will keep them from flapping so you can get your hand in position to fold the wings back and away.
Another method is to gently hold the wings and move the butterfly forward. Tugging straight up or back seems to cause automatic reflex to grip tighter. Again, the butterfly will take several steps, and in the process, end up letting go of what it's holding on to -- .so gradually lift the butterfly off as the hooks disengage. My kids think it's funny to see the butterfly frantically scrabbling around without being able to hold on.
Don't forcibly pull the butterfly off it's perch. You can pull it's legs or leg tips off.
Hope that helps.