+0
Which is better, (1) or (2) ?

(1) On Amy's ninth birthday, her parents gave her a secret present in a box. Opening the box, Amy was pleasantly surprised to see a lovely puppy inside which she had expected as a pet for a long time.

(2) On Amy's ninth birthday, her parents gave her a surprise present in a box. Opening the box, Amy was thrilled to find a lovely puppy which she had been hoping for as a pet for a long time.
+0
Problems with #1:
A puppy would thrill most children. Being "pleasantly surprised" is an odd response.
Bigger problem: You can't be surprised by something you've expected for a long time.

Either way, put a comma before "which."
Comments  
I rewrite the sentences as following. Are they acceptable? Which is better, (1) or (2) ?

(1) On Amy's ninth birthday, her parents gave her a secret present in a box. Upon she opened the box, she was thrilled to find a puppy inside.

(2) On Amy's ninth birthday, her parents gave her a secret present in a box. Opening the box, she was thrilled to find a puppy inside.