To get over crushes, I made a list of the qualities, values and morals I cherish, how I want to be treated and what I respect in others. Then, I used this list to honestly compare how my "crush" measured up. Every time, I discovered that the crush didn't meet the standards.
While there was some charm and appeal to these people, there was also a very good reason I didn't end up with them. If I'd gotten my way, I would not have been happy. There were things they did that I could not respect them for, morals or values that didn't mesh with mine, etc.
I kept that list and refined it. I used it as a guide when dating. Even though some people thought I was being too picky and would never find someone to meet my "Wish List" I eventually did. It was worth the wait and I had the added bonus of not having "unrequited loves" hanging over me.