Both are grammatically correct.
If you are speaking of European people in general, then the desired meaning is the second. You should use "Europeans".
We can use "A" to mean "one". For example, you could write "A European visitor might think India is exotic, but he will soon find much that is familiar". In this sentence we introduce a single person.
Your first sentence is awkward. Note how I've used "might" in my example, since while I can talk about Europeans in general. It is odd to say "A European thinks India is exotic" since it supposes that this is true for every single European. It also implies (by using the present tense) that this one European always thinks this. The first sentence is an example of good grammar, but bad English.
Also note, people rarely like to be generalised! Europe is a region with over half a billion people. Many European people were born in India, or come from Indian families. Try to use an adjective not a noun for people. "European people" not "Europeans", and soften the generalisation. "Some European people might think ..."
Both "the land of snake charmers" and "a land of snake charmers" are correct. The difference is whether you understand there to be only one such land (the normal a/the distinction).