Pretty close to the same. But “has a good nose for” is better. Having a “nose” for something means that you can sense something is there (like a good news story) even before you can see it and before you know all the facts, and you “follow your nose” (your intuition) until you find all the facts. The analogy is to a hunting dog: the dog can smell the animal, and the dog follows the trail of animal smell until the dog finds the animal. Having an “eye” for something is better used for visual things. Example: “She has a great eye for decorating” means “She is very talented at decorating.”