I would like to set up something where I use a miniature solar cell (like this) to power a push solenoid (something like this), so that when light hits the cell, the solenoid pushes. I know basically nothing about engineering, but I know that the 4 watts produced by the solar cell are not enough to push a 7 watt solenoid. How could I accomplish something like this?
It's much worse than you realize. First, the 4 you see is not 4 watts, it's 4 volts with no current. If you short-circuit the output you can get about 50 uA. Figure something on the order of 20 to 30 uA at something like 4 volts, or about 100 uW (microwatts).
There is simply no way do what you want with what you have. If you want to drive a 7 watt solenoid, you'll have to use a 7 watt solar panel. Or, if you're really desperate, you could use about 70,000 of those solar cells (I'm not recommending this, mind you, just tossing out suggestions).
If you have a separate source of power for the solenoid, you could use the solar cell to drive the gate of a power MOSFET which would turn on the solenoid, but that's really about as good as you're going to get.
It is easy enough to construct a solution to CONTROL a solenoid when light is detected by your miniature PV device or any other kind of light sensor. However the POWER to pull in the solenoid must have a separate and independent source.
There are hundreds of example circuits like this online showing light-sensing circuits operating relays, solenoids, motors, etc. The concept is the same for whatever kind of load.