Hundreds of small boats are navigating deep floodwaters that have inundated thousands of homes in the Sri Lankan capital to deliver aid and rescue residents, as forecasters warned of more heavy rain.

The week-long rains have caused chaos across Sri Lanka, unleashing deadly landslides and driving tens of thousands from their homes.

Since Monday, at least 64 people have died from lightning strikes, drowning, falling trees and landslides triggered by the rains, officials said. The toll includes at least 31 victims of mudslides that swallowed up three hillside villages in the central district of Kegalle, where hundreds are still missing.

Soldiers have resumed searching for the missing, but hold little hope of finding survivors. They recovered just one body during Friday, with the search repeatedly halted as continuing rain threatened to trigger more landslides.

"It's a very difficult task, but troops will carry out their work in the hope of finding more" in the remote area about 45 miles north of Colombo, said military spokesman Brigadier Jayanath Jayaweera.

The island is unlikely to get a reprieve soon, with the meteorological department warning that rains and stormy seas are expected to continue, especially in the south west.

Schools were closed across the country, and hundreds of thousands of people were taken from homes across the island to 594 shelters.

In the capital, more than 185,000 have been displaced, including tens of thousands taken to temporary shelters. Others were camping on rooftops and the top floors of buildings. Electricity has been cut in flooded areas to prevent electrocutions.

Some people fashioned floating devices from old car tyres or plastic tubes, which they used to move food, water and other supplies. In some places, people wading in the water fought strong currents to stay upright.

The navy said it was sending two ships with aid to Colombo. On Thursday, foreign minister Mangala Samaraweera said there was an urgent need for water purification tablets, water pumps and drinking water.

ends