All right, my comments on the actual card...
First off, it's a pretty unique idea. Having a card which can grab more copies of popular cards is interesting, but in a lot of games (maybe even the majority of games) this will just end up being a pure cantrip. Often times there won't be a card that gets down to two, and even when there is, you have to "time it" right; you have to draw your Scavenger before the last two copies run out. I think you generally want to get Scavenger fairly early; if you wait and buy it when you see that a good card is about to run out, then you risk not drawing it in time. But even though it's a cantrip and doesn't hurt your economy, it doesn't help your economy either when you get it early, and usually there's something you'd rather be buying. Also, if the good card that's running out is $4 or less, then you probably never even buy Scavenger, you just go straight for the good card instead (especially since it's a one-shot). If you leave everything else as it is now, I don't think it needs to be a one-shot, although I doubt it makes much difference either way. I think it's pretty weak as it is, making it not one-shot might slightly improve it.
The main weakness of it is that it's just a cantrip on boards in which there's not a hotly contested card. That made me consider, what if it picked up cards from kingdom piles with 9+ cards in them? Obviously, that's a lot stronger, since it can pick up anything right away. So you might make it more expensive, but then you face the problem of buying a $5 card to turn it into another $5, and that's silly. So instead of making it more expensive, you could leave the price at $2-ish, and make it harder to get in some other way. Here is what I came up with:
Scavenger ($2)
Action
+1 Card
+1 Action
If any kingdom piles have 9 or more cards in them, you may gain a card from one of these piles. If you gain a card in this way, trash this card.
---
You cannot buy this while you have Copper in play.
It still only costs $2, but you can't open with it, and sometimes you'll have S/C/C/C and you'll just buy a $5 anyway. But with a hand of S/C/C you might buy this, and with S/C it's almost certainly worthwhile. Gaining from piles with 9+ cards in them encourages diversity (which I like), and gives you lots of options. It means that you can buy any unpopular card with one Silver, but it's delayed by a shuffle. If it's too strong, bumping the price to $3 would make it quite a bit harder to get, or you could require that the kingdom piles have 10 cards in them (10+ if you want to allow gaining Rats).
Unfortunately IRL it would be annoying to count which piles have 9+ cards in them (I don't think that counting to 2 would be a problem, but 9 might be). Also, the version that I just described plays quite differently from your original card (it pretty much has the opposite effect, getting unpopular cards instead of popular ones), so I'm not sure if that's what you were going for, but it's still a card that gains based on cards remaining in the supply.
Also, it should be noted that all of my comments were assuming 2-player. Your original version may be better with 3+ players, but then maybe it's swingier.