Intestinal Worms like tapeworm and threadworms cause the fish to lose weight, continue eating and swimming normally, do a stringy white poop. Fish can do this for months and not be too badly affected. In some cases, fish with bad worm infestation will actually gain weight and get fat and look like a pregnant guppy. This is due to the huge number of worms inside the fish.
Livebearers like guppies, mollies, swordtails & platies are regularly infected with gill flukes and intestinal worms. If the fish are still eating well, then worms is the most likely cause.
You can use Praziquantel to treat tapeworm and gill flukes. And Levamisole to treat thread/ round worms. If you can't find these medications, look for Flubendazole, which treats both lots of worms.
Remove carbon from filters before treatment and increase aeration/ surface turbulence to maximise oxygen levels in the water.
You treat the fish once a week for 4 weeks. The first treatment will kill any worms in the fish. The second, third and forth treatments kill any baby worms that hatch from eggs inside the fish's digestive tract.
Treat every fish tank in the house at the same time to prevent cross contamination.
You do a 75% water change and complete gravel clean 24-48 hours after treatment. Clean the filter 24 hours after treatment too.
Do not use the 2 medications together. If you want to treat both medications in a short space of time, use Praziquantel on day one. Do a 75% water change and gravel clean the substrate on day 2 & 3. Treat the tank with Levamisole on day 4 and do a 75% water change and gravel clean on day 5, 6 & 7 and then start with Praziquantel again on day 8.
The water changes will remove most of the medication so you don't overdose the fish the next time you treat them. The gravel cleaning will suck out any worms and eggs that have been expelled by the fish. Repeating the treatment for 3-4 doses at weekly intervals will kill any worms that hatch from eggs. At the end of the treatment you will have healthier fish.