yes and no. my experiences have been that taking benadryl or gravel will help you fall asleep, but you won't wake up feeling refreshed and awake.
Best advice? stick to a really strict sleep schedule (going to bed at the same time, as long as you are tired, waking up at the same time EVERY DAY), no clock watching and if you are awake for what seems like more then 20 mins, force yourself to get out of bed and do something really mindless until you are tired again.
Benadryl in the long term can harm your body (for example, if you use it every night without any allergy symptoms). Most pharmacies will sell OTC Sleep aids, which basically contain the "part" of the benadryl that makes you sleepy. Those would definately be better for you if you have trouble sleeping. However, if the Sleep Aids aren't enough, you can always ask your doctor what's the best option for you :)