Child predator caught