Lando Norris finished second to McLaren team mate and title rival Oscar Piastri at the Belgian Grand Prix.