Their locations are randomized and change each time you fly or change routes. The best way to encounter them for the first time is to have a lvl39 or pokemon as your leading pokemon and throw up a repel. Run around in grass with normally low leveled pokemon for a while and if one doesnt show up, fly or changes routes. Just repeat this and you will eventually find them. I'd personally suggest a lvl39 haunter since it has mean look and hypnosis which both help with catching them.