1. A computer-implemented method of matching an advertisement for a product to a television media asset comprising: extracting, by a processor, at least one product keyword for a product from a web page associated with the product; generating, by the processor, a product profile for the product comprising the at least one extracted product keyword for the product; generating, by the processor, a plurality of media asset profiles corresponding to a plurality of television media assets, each media asset profile including at least one media asset keyword for a corresponding television media asset; calculating, for each television media asset, a match score based on the at least one media asset keyword and the at least one extracted product keyword; calculating, for the product profile, a plurality of fitness scores based at least in part on the match score for each television media asset; and determining a particular television media asset for placing an advertisement for the product based upon the plurality of fitness scores.