Crowds dressed as famed revolutionary Emiliano Zapata and Lucha Libre wrestlers cheered from Mexico City's central Zocalo Square as President Enrique Peña Nieto performed the ceremonial El Grito de Dolores "the cry of independence" from the balcony of the National Palace. Meanwhile, lines of police battled to keep protesters calling for his resignation out of the square.

Several thousand protesters marched towards the Zocalo (main square) where they hoped to disrupt the traditional cry of independence. One demonstrator told Reuters: "It's also a time to yell "out with Peña" because it's a terrible government, inept, we should not have to prop him up."

Many carried signs calling for his resignation, while others bore a giant Mexican flag, drained of its colour and featuring a dead eagle.

The protest came shortly after Peña Nieto was widely criticised for hosting Republican presidential candidate Donald Trump. The New York businessman has repeatedly vowed to build a border wall which, he says, Mexico would have to pay for. Peña Nieto's critics accuse the leader of not pressing Mexico's interests during the encounter.

The police successfully kept the protesters out of the square, and the ceremony went ahead. The president waved the red, white and green national flag, while his wife, former model and actress Angélica Rivera, waved to the crowds. The Daily Telegraph reported a protester's claims that "the people who will be cheering are bussed in from other states. They're poor and are offered a free trip to the capital, a big great show. So they come."

With economic growth in Mexico sluggish and previous corruption scandals involving the purchase of a home by the First Lady from a government contractor and the suspected massacre of 43 students, there is widespread discontent with the Mexican president.