There have been discussions about this, but the main effective solution that cane of it was an ozone-based deodorizer. Not exactly diy, and not always a good plan for local air quality.
That being said, searching the forum for ozone will probably find it.