Hamilton beats Bottas at Spanish GP for 5th Mercedes 1-2
Pierre Gasly of Red Bull, Kevin Magnussen (Haas), Carlos Sainz (McLaren), Daniil Kvyat (Toro Rosso) and Romain Grosjean (Haas) completed the top 10.
Lando Norris of McLaren and Lance Stroll of Racing Point failed to finish after colliding two-thirds through the race.
Renault's Nico Hulkenberg had to start from the pit lane because of a penalty incurred after a replacement front wing did not meet specifications. Hulkenberg finished 13th, right behind Renault partner Daniel Ricciardo.
Antonio Giovinazzi started from last place after he incurred a five-place grid penalty for an unscheduled gearbox change to his Alfa Romeo. Giovinazzi finished 16th, in front of Williams pair George Russell and Robert Kubica.
Mercedes' struggling rivals will now have two weeks to try to improve before the Monaco GP on May 26.
AP