Beautiflys are a bit rare to come across. In Diamond, Pearl and Platinum, you find Silcoons in Eterna Forest. When you raise them to level 10 you will get a Beautifly.
In Pokemon Ruby, Sapphire and Emerald Beautifly can be found in the Petalburg Woods as Silcoons as well. Remember they can evolve at level 10 (or any time after).
If you decide to do it the hard way and catch some Wurmples, keep in mind it might evolve to Cascoon a zillion times before you get a Silcoon.