Powering 2x 3-12v Standard Gearmotors w/ Arduino UNO

I am trying to figure out how I am going to power, control and run 2 of these motors:Standard Gearmotor - 303 RPM (3-12V) - ROB-12147 - SparkFun Electronics

I want to be able to control the speed and direction of each motor. I have an Arduino UNO R3.

Questions:
What power supply/ battery will I need?

How will I have to wire the sucker up?

Do I need any motor controllers/Shields or Integrated Circuits like an H-Bridge?

If I do need a motor shield could I make my own from a prototyping board and how?

Hi.

see here well documented.

"The L9110 works with voltages from 2.5 to 12V and can give a continues current of 800mA. With a maximum peak current of 1.5-2A. More then enough for a small DC motor."

Do no power the motor ( driver ) with your arduino, use external power for the motor.

Other driver could work, better/worst, but by this way you take it easily.

FEATURES
DOCUMENTS
Voltage: 3 - 12 Volts
Gear Ratio: 10:1
Stall Torque: 16.8 oz-in. (@ 12V)
Speed: 303 RPM (@ 12V)
No Load Current: 95 mA (@ 12V)
==>Stall Current: 0.5A (@ 12V)<==
Insulation Resistance: 10 MOhm
Dielectric Strength: 300VDC
DC Reversible
Shaft Size: 6mm Diameter x 0.715” Length
Weight: 4.1 oz.

Stall current at 12 volts is 0.5A although manufacturers can display misleading info.

If true u could use a cheap l9110s driver with max 0.8 ampere current output.