The way I see it, no matter what, you will need to issue a poweroff at the raspberry after you do what ever you want to do. At this point you are left with a raspberry that needs either a plug/unplug of the usb cable or grounding pin 5 (or connect pins 5 and 6, 6 being the GND).
So yes, you will need another "brain" that draws a few mA of power and will either ground pin 5 or maybe drive a relay that will cut momentarily the red wire in your usb cable.
The question you then have is how do I tell the second brain when to power me off/restart me. If you have the serial free, you could connect the two brains and issue a "Hello restart me after that much time" command, or you could have the second brain performing the restart procedure every fixed amount of time. Arduino is an overkill for me, you can do the restart with a small atTiny chip or something like that.
The main problem with any second brain is the fact that you want to turn on the rpi every week. That limits your options a lot, because the way I see it you will be putting a lot of faith on your second brain to count the time properly and most of the timer relays are counting up to a day and/or are mains powered (google search:timer relays). That means that you will probably end up turning on the raspberry every time, have a counter in the raspberry (a txt file probably in the pihome folder) and when it reaches 7 (a week has passed then keep it on for as long as you need, other wise switch it off immediately and wait for the next day.
On a side note and based on this Power Consumption Benchmark
"when you power off a Raspberry Pi (any model), it typically uses 20-30 mA (0.1W) until you physically disconnect the power."
If those 20-30 mA are bothering you, then you can have the second brain, instead of toggling the red wire in your usb cable, to keep it disconnected and connect it when you want the raspberry turned on.