HW: Pi I/O is 3.3V, Arduino is 5V. So you'll need level converters. SW: You'll need software on the Pi that could talk to the shield, which may or may not exist today. That's out of scope for this forum.
Got your message on my blog (baldengineer.com). To answer the easy questions, I bought my chips from Sparkfun. The wiring used was posted on the same page you left a comment. I used the same values out of the MSGEQ7's datasheet.
It's been my experience it is pretty easy to blow the input to the chip. Especially if you forget the 22k resistors leading to the input. The chip really seems designed for line-level input and not for "headphone-level" input.
I'm not sure I understand the problem. You shouldn't expect the chip to read 0 when you have "no sound" going in, unless you purposely connect the input to ground. What seems like "no sound" to you, can still have noise that the MSGEQ7 picks up.
Why would you use an Arduino for this task--whatever the task is? What is the point of a "random search"? What are you going to do with the results? With so little RAM on Arduino doing anything meaningful with all that text data is going to be difficult.
It is probably better to use a SBC like the Pi or Beaglebone, or just write a program that runs on your PC.